Custom SRP 7.1.0 Splitting Shadow Code
Catlike Coding Unity is refactoring its Custom SRP 7.1.0 shadow pipeline by pulling point-light and spot-light logic out of the monolithic Shadows class and into a new OtherShadows class. The tutorial is built with Unity 6000.5.8f1 and follows the earlier Custom SRP 7.0.0 work, but this step is about structure rather than new rendering behavior.
The practical change is that other shadows now own their own settings, light bookkeeping, render info, and resource handles. A new Handles struct wraps the atlas texture and data buffer, while a public Setup method resets state and a HasLights property lets the main Shadows driver decide whether there is anything to render. ReserveShadows is also made public and now takes culling results as a parameter, along with a ref flag for shadow-mask usage.
The renderer setup is being split too. GetHandles now creates the shadow atlas and buffer for other shadows, and BuildRendererLists passes culling data through to specialized point-shadow and spot-shadow paths. Shared helpers such as ConvertToAtlasMatrix and SetTileViewport are being promoted back into Shadows so both systems can reuse them cleanly.
For developers building custom SRPs in Unity, this is the kind of refactor that pays off later: less coupling, clearer ownership, and fewer reasons for unrelated shadow code to break when one path changes. The exact visual output stays the same, but the codebase becomes easier to extend when the next shadow feature lands.
“Changed code, same shadows.”
- what
- Custom SRP 7.1.0 splits shadow code into a new OtherShadows class for point and spot lights.
- who
- Catlike Coding Unity, working in Unity 6000.5.8f1.
- when
- This tutorial follows Custom SRP 7.0.0 and introduces version 7.1.0.
- impact
- Custom SRP authors get cleaner separation, easier reuse, and simpler future shadow changes.
Pure refactor; no visual or feature change
Follow Unity updates
See relevant stories in your personalized news feed.
Discussion