libprimis
libprimis copied to clipboard
Split up `renderlights.cpp`
The general g-buffer and lights rendering file renderlights
is very long (5100 lines) and is not particularly atomic; functionality covered in this file includes:
- ~~screenspace ambient occlusion~~ https://github.com/project-imprimis/libprimis/commit/a5edbdfb0b7ec6baac1380bb61a0c110309fa427
- multisample antialiasing
- g-buffer setup and rendering
- shadow map setup and rendering
- ~~cascaded shadow maps~~ https://github.com/project-imprimis/libprimis/commit/cd859b66af2b819dfc36d9a86c0853bf3c5c4a85
- light entity metadata
- volumetric lighting
- reflective shadow map calculation (
rsm
) - ~~hdr and bloom~~ https://github.com/project-imprimis/libprimis/commit/e4f4a81960cda5f84c0c81d3b15e5614e9e17291
As many of these individual topics should be covered in their own file where they can be coherent and contained.