2D Lighting and Normal Maps

This one will probably be a short one. One of the big motivations for me moving to Unity was the possibilities of a dedicated lighting system. Unity actually has its own separate lighting systems for 2D and 3D, along with some rough limitations I’d run into later. But first I want to focus on the positives.

First off, they look great. The effect they create is unmatched and the tools themselves are super malleable and easy to use. For example, when I first set up the lights, they weren’t illuminating the rain drops as much as I wanted. So my brain’s stupid solution was to add a second identical light with 10x the power that only affected the rain layer. And y’know what? It worked! Oh and normal maps, once generated and applied, they were a breeze. They really helped add depth and texture to my sprites, they really helped especially when getting the phone lights to shine on the characters’ faces, but then we kind of got into the bad.

Every light is projected onto the scene as one layer, basically stacked on top of the frame. They could affect different layers, but layers couldn’t occlude them properly. This meant I couldn’t get many light shapes other than perfect circles and I couldn’t get too creative with my layers.

As a result of this, effects like rim lighting were made difficult. There had to be a lot of cheats to get the look I wanted and not all of them were intuitive to set up. The system still isn’t perfect. Lights tend to stack when overlapping, breaking layer rules and there are still things I wish I could have added. An idea was to add faint lights and a rumble from underground to signify a passing subway, but the current system wouldn’t allow for this. That being said, I’m still super happy with what I have. I think the lights do a lot of heavy lifting in the atmosphere and really get the “spotlight” they deserve.

Previous
Previous

Environment Iteration

Next
Next

The Character Creator