During Boss Rush Jam 2025, our team was debating whether we wanted a daytime or nighttime scene for our game, Spin of Destiny (try the game here). Both had their unique visual appeal, and we wanted a way to experience different lighting setups before making a final decision.
The making of Light Manager
As I was browsing through our Game Design Document (GDD), I also noticed that the team originally had an idea of the boss behaving differently during different fight phases. While this wasn’t fully implemented at the time, I thought a day/night lighting switch could be a great visual cue for players—helping them anticipate and react to different fight stages.
With that in mind, I decided to create a Lighting Manager—a tool that would allow the team to easily switch between lighting conditions in Unity, helping us experiment and potentially setting up a more dynamic and immersive gameplay experience.

How It Works
While I was doing my research, this blog post inspired me a lot! Feel free to check it out!
1. Light Profile
The Light Profile is a ScriptableObject that acts as a preset for all lighting-related settings in Unity. Instead of manually adjusting values every time, this lets users save and switch between lighting setups instantly.
Building the Light Profile
I wanted to make the system as modular as possible. While working on the initial lighting, I took notes of the most frequently used parameters, which became the foundation for the Light Profile:
  ● HDRI Settings (Skybox exposure, rotation, intensity)
  ● Directional Light (Intensity, color, angle)
  ● Post-Processing Volume Settings (Bloom, contrast, color grading)
By packaging these into a ScriptableObject, artists can create multiple profiles—one for daytime, one for nighttime, or even different thematic lighting conditions.
2. Light Manager
 The Light Manager is the "worker" that applies settings from a Light Profile to the actual scene. It acts as a bridge between the stored data and Unity's lighting system.
How It Works
The Light Manager is set up with three core containers:
  1. Directional Light Container – Stores the scene’s main light source.
  2. Post-Processing Volume Container – Holds the global post-processing settings.
  3. Light Profile Reference – Allows users to select and apply a saved Light Profile.
When the user switches profiles, the Light Manager updates all lighting parameters in real time, making it easy to test different setups instantly.
Future Possibilities
While the current system allows for instant lighting swaps, I’ve been thinking about how to expand it further:
  ● Blending between profiles – Instead of hard switching, smoothly transitioning between setups could create natural day/night cycles.
  ● Dynamic lighting for boss fights – Implementing an event-based system to change the lighting at different fight phases for more immersive gameplay.​​​​​​​
Final Thoughts
This was a fun project that came from a simple need. I decided to open-source this tool so other developers and artists can experiment with it, modify it, and even contribute to improving it.
If you try it out, I’d love to hear your thoughts! Any feedback, suggestions, or contributions are more than welcome.

You may also like

Back to Top