Hey Folks! Tremendously productive day today, which is a big relief. Between vacation, family illness, and banging my head against some awkward shader math, I was really starting to stress out. However, I was able to check-in a bunch of stuff which was a welcome boost!
First of all, shader math. It turns out the lighting issue I was struggling with was mainly due to a units mismatch. Unity's eulerAngles delivers values in degrees, but Unity's Mathf.Cos() and Sin() require radians. I have no idea why they would do that to devs, but there it is. I ended up figuring it out after forcing the shader to output lighting vector and UV info via colors and...it was just dumb, brute force. But it's done.
After that, I found and fixed a few issues in the auto-tiling code which was clobbering some wall sprites with other ones as they loaded. I also was missing normal maps on all pieces except the first. And lastly, there was a sneaky lighting bug that showed up if you rotated the entire ship. Thankfully that last one was just a matter of recalculating lighting objects when the ship gets rotated (not a common occurrence).
Once that was done, I noticed the old docking system doors had the old style walls built-into them. So I tore those off and replaced all the old docking rings with new ones in the game. Plus a few stray old wall diagonals I missed during clean-up.
Finally, I got rid of a bunch of old, redundant items that are no longer valid. Things like the diagonal walls and lights (shadows don't work on those), horizontal canisters, the original "big, dull, gray, dumb reactor," and some of the related data/images. Clean-up always feels good, and the list of items to scroll by in the editor is now free of several duplicates!
Yeah, this was a good day. I've checked-in the updates, grabbed the latest code, and even gave Michael's latest social combat feature a quick test drive before writing this. Very cool! I demanded something from Jenna, yelled at her, and she did not take it well, and refused. Then, we exited conversation to resume gameplay. Seeing that log message scroll with updates and things move around was a nice surprise, and I think there's good stuff to come!