pandemonium_engine/servers/rendering
Relintai 5d2a594843 Ported: Shadow volume culling and tighter shadow caster culling
Existing shadow caster culling using the BVH takes no account of the camera. This PR adds the highly encapsulated class VisualServerLightCuller which can cut down the casters in the shadow volume to only those which can cast shadows on the camera frustum.
This is used to:
* More accurately defer dirty updates to shadows when the shadow volume does not intersect the camera frustum.
* Tighter cull shadow casters to the view frustum.
Lights dirty state is now automatically managed:
* Continuous (tighter caster culling)
* Static (all casters are rendered)
- lawnjelly
8ca631a466
2024-02-08 18:40:44 +01:00
..
portals Portals - include in bound and special cases in start room 2024-02-08 15:10:00 +01:00
rasterizer.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rasterizer.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_canvas_helper.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_canvas_helper.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_canvas.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_canvas.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_constants.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_globals.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_globals.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_light_culler.cpp Ported: Shadow volume culling and tighter shadow caster culling 2024-02-08 18:40:44 +01:00
rendering_server_light_culler.h Ported: Shadow volume culling and tighter shadow caster culling 2024-02-08 18:40:44 +01:00
rendering_server_raster.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_raster.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_scene.cpp Ported: Shadow volume culling and tighter shadow caster culling 2024-02-08 18:40:44 +01:00
rendering_server_scene.h Ported: Shadow volume culling and tighter shadow caster culling 2024-02-08 18:40:44 +01:00
rendering_server_viewport.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_viewport.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_wrap_mt.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
rendering_server_wrap_mt.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
SCsub Also renamed the files. 2022-08-19 21:24:36 +02:00
shader_language.cpp Prevent shuffling custom shader functions (shader cache requires determinism) 2024-02-08 14:48:50 +01:00
shader_language.h Prevent shuffling custom shader functions (shader cache requires determinism) 2024-02-08 14:48:50 +01:00
shader_types.cpp File copyright header updates pt10. 2023-12-18 00:31:04 +01:00
shader_types.h File copyright header updates pt10. 2023-12-18 00:31:04 +01:00