feat: cubemap shadow mapping — true omnidirectional point light shadows
- VulkanShadowMap: 1024x1024x6 layer D32_SFLOAT cube image - CubeCompatible flag, cube view for sampling, 6 face views for rendering - GetFaceViewProj: 6 directions (+X, -X, +Y, -Y, +Z, -Z) with correct up vectors - 6 shadow render passes per frame (one per cube face) - Fragment shader: samplerCube instead of sampler2D - Shadow: direction from light to fragment, distance comparison - No more perspective frustum limitation — omnidirectional shadows - shadow.vert: same push constant block (160B), uses lightViewProj per face - triangle.vert: removed fragLightSpacePos (not needed for cubemap) - Reduced shadow map size to 1024 (6x memory vs single 2048) - Floor/Grid excluded from shadow casting
This commit is contained in:
Binary file not shown.
Reference in New Issue
Block a user