1b0e12e824
feat(renderer): add CSM, point/spot shadows, and frustum light culling
...
- CascadedShadowMap: 2-cascade directional shadows with frustum-based splits
- PointShadowMap: cube depth texture with 6-face rendering
- SpotShadowMap: perspective shadow map from spot light cone
- Frustum light culling: Gribb-Hartmann plane extraction + sphere tests
- Mat4::inverse() for frustum corner computation
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-25 20:55:43 +09:00
d3eead53cf
feat(math): add Ray type with direction normalization
2026-03-25 10:45:06 +09:00
8d3855c1a7
feat(math): add AABB type with intersection, merge, and containment
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-25 10:10:27 +09:00
5f962f376e
feat: add shadow demo with directional light shadow mapping and 3x3 PCF
...
- Add Mat4::orthographic() to voltex_math for light projection
- Fix pbr_demo and multi_light_demo to provide shadow bind group (group 3)
required by updated PBR pipeline (dummy shadow with size=0 disables it)
- Create shadow_demo with two-pass rendering: shadow depth pass using
orthographic light projection, then PBR color pass with shadow sampling
- Scene: ground plane, 3 spheres, 2 cubes with directional light
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 21:09:27 +09:00
82e3c19b53
feat(math): add Mat4 with transforms, look_at, perspective
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 19:46:28 +09:00
c644b784a6
feat(math): add Vec2 and Vec4 types
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-24 19:45:28 +09:00
81ba6f7e5d
feat: implement Phase 1 foundation - triangle rendering
...
- voltex_math: Vec3 with arithmetic ops, dot, cross, length, normalize
- voltex_platform: VoltexWindow (winit wrapper), InputState (keyboard/mouse),
GameTimer (fixed timestep + variable render loop)
- voltex_renderer: GpuContext (wgpu init), Vertex + buffer layout,
WGSL shader, render pipeline
- triangle example: colored triangle with ESC to exit
All 13 tests passing. Window renders RGB triangle on dark background.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 19:34:39 +09:00
c5b71b32b7
feat: initialize cargo workspace with voltex_math, voltex_platform, voltex_renderer
...
Phase 1 Task 1 - workspace scaffolding with stub crates
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-24 17:47:02 +09:00