c3cca30bbafb30f1af8cf6aec11bda794c454793
Architecture: - SceneUBO (448B): mat4 vp + numLights + numShadowLights + LightData[8] + shadowParams[4] - LightData: vec4 posAndIntensity + vec4 colorAndRange (32B per light) - Push constants (main): mat4 model only (64B) — all light data in UBO - Push constants (shadow): model(64) + lightViewProj(64) + lightPos(16) + shadowParams(16) = 160B - Shadow: cubemap array (24 layers = 4 lights × 6 faces), samplerCubeArray in shader - Shadow passes: numShadowLights × 6 faces (2 lights = 12 passes) - Fragment shader: loop over lights, calcPBR per light, shadow from corresponding cubemap layer New OBJ files with verified CCW winding: - pyramid.obj, diamond.obj, torus.obj, cone.obj, sphere.obj Scene 'Chaos Architecture': - 28 sphere pyramid (physics) - 30 falling diamonds (physics) - 8 floating torus rings (decorative) - 4 pyramid decorations (static) - 4 cone pillars (static) - Central torus knot (floating) - 2 dynamic point lights (warm + cool), both cast shadows - Both lights orbit in chaotic circles ImGui panel: - Per-light intensity, range, RGB sliders - Shadow bias, sample radius, far plane sliders 227 tests, all pass
Description
AI powered Game Engine
23 MiB
Languages
C#
97.8%
GLSL
1.8%
Shell
0.2%
PowerShell
0.2%