2D Ray Tracing

An SDF of the scene is generated in real time using the Jump Flood Algorithm. It allows for any shape to be a light source and any shape to occlude light. Any imported sprite or tile-map will work with this implementation as seen by the wall and floor sprites. It determines what a light source and occluder is based on Unity's layer mask system. A simple change in layers will automatically update the scene. The light sources and scene are rendered a couple hundred pixels past the screen bounds so that lights will still be rendered off screen.