Skip to main content

Module projection

Module projection 

Source
Expand description

Unified manifold projection — one project(), many views (Phase 1.4). Unified manifold projection (Phase 1.4, RENDERER_IMPLEMENTATION_PLAN.md) — one projection, many views.

The renderer’s foundation is the 10D tensor manifold. A node’s place is decided once, by the semantic-motor map 10D → 3D world (the same map projector.wgsl applies on the GPU; crate::render::pga is its parity-tested CPU oracle). Every “view” — the 3D scene, the 2D canvas — is then a projection of that same world point onto a target, not an independent re-computation. This module is the single entry point that makes that explicit:

  • [manifold_world] — the shared step: Tensor10D → [x,y,z] world.
  • [project] — that world point as the requested [ProjectionTarget] (3D volume, or its 2D planar shadow). One call, selectable view.

The 3D scene additionally applies the orbit camera (crate::render::camera) on top of the world point; the 2D canvas uses the planar shadow directly. Both start from one project.

Enums§

ProjectionTarget
Which view of the shared manifold world point to produce.

Functions§

manifold_world
The shared projection step — a 10D tensor node to its 3D world position via the semantic-motor manifold map. time drives the animated bands (v/q); a spectator standpoint with full epistemic aperture is used (view-neutral). This is the parity-tested oracle of projector.wgsl.
project
One projection, many views: project a 10D node through the shared manifold map, then select the view. Volume3D yields the 3D world point; Plane2D yields its 2D shadow (z zeroed). The two agree on (x, y) by construction — they are the same manifold point seen two ways.