Since the player is responsible for expanding their Space Station, our Lighting System has to factor in free-formability while being performant.
Each Z-Level in the game is a 128x128 tile grid and any one of those tiles can be a hull unit. We divide this grid into 16x16 subsections of 8x8 tiles each.
[img]{STEAM_CLAN_IMAGE}/45208703/45db38d07a318f4a34570fabd4a339987ca30a51.jpg[/img]
Each Subsection is then validated for constructed Hull Units and we designate tile clusters within the subsections. Tile Clusters are formed from the largest chunks of tiles present within each subsection.
[img]{STEAM_CLAN_IMAGE}/45208703/66f28e7c8e907945e649ce608badd1d3e48ba38b.jpg[/img]
Once Tile Clusters are designated, we assign lights to each of them. We limit lights generated per subsection for performance reasons. This will also depend on what Light Settings the player has set in the Graphics Settings.
[img]{STEAM_CLAN_IMAGE}/45208703/c712f46be720b449e21c7bc8ce23297093125a34.jpg[/img]
[img]{STEAM_CLAN_IMAGE}/45208703/97516ae44084cadbb64bdc3ec50496c09b168fb2.jpg[/img]
As the player expands the Space Station, only the relevant subsections are checked again for new light spawning.
[img]{STEAM_CLAN_IMAGE}/45208703/07681768566bdfd1b16b50983dbcbaae9523b30e.jpg[/img]
PS: This system is still WIP as we are ironing out the bugs while also optimizing for performance. Also, a Post Processing Profile is not applied to the screenshots.
[img]{STEAM_CLAN_IMAGE}/45208703/82eadcfb4458890f41a826ffcde9704bce744239.jpg[/img]