feat(dominium): dominium-iso — proyección pseudo-3D isométrica

Proyección calculada en CPU antes de emitir quads 2D (GPUI no maneja
matrices 3D ni mallas).

- ZWeights — pesos del Z compuesto, uno por capa; z_of() calcula el
  relieve como Σ wᵢ·capaᵢ (los 5 sliders del panel).
- IsoProjector — matriz iso fija: x=(x-y)·cos30, y=(x+y)·sin30 − Z·zf.
  cos/sin de 30° vía libm → proyección bit-exacta cross-platform.
- project() + shadow() (Lambert plano: la sombra cae en z=0 desplazada
  por la dirección de luz, larga en proporción a la altura).

6 tests verdes (origen, eje del rombo, Z eleva, Z compuesto lineal,
determinismo, sombra de punto en el suelo). cargo check verde.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
sergio
2026-05-20 16:16:33 +00:00
parent bbfa44ff35
commit e2833a20c4
4 changed files with 177 additions and 0 deletions
+4
View File
@@ -147,6 +147,7 @@ members = [
# ============================================================
"crates/modules/dominium/dominium-core",
"crates/modules/dominium/dominium-physics",
"crates/modules/dominium/dominium-iso",
# ============================================================
# modules/gioser/ — Landing WASM (chacana + 4 elementos)
@@ -286,6 +287,9 @@ libp2p-allow-block-list = "0.6"
# === SSH (brahman-ssh-multiplex, sandokan RemoteEngine, matilda) ===
russh = "0.54"
# === Math determinista cross-platform (dominium) ===
libm = "0.2"
# === Code parsing (minga) ===
tree-sitter = "0.24"
tree-sitter-rust = "0.23"