Had been struggling for some time with a simple custom light setup and normal maps in Unity using its Shuriken particle system.
I wanted my smoke particle to receive light from one direction and use the normal map to add details to it.
The problem I ran in to was that it wasn’t shading correctly at all when I rotated the particle.
It was all fine as long as the particle didn’t rotate, or the camera didn’t rotate.
But when I rotated the particle the lighting stayed the same.
What was later discovered was that Shuriken particles do not have Tangent data vertex streams by default, so that needed to be manually added.
Now, transforming the Light Vector from World to Tangent space worked as it was intended and the particle will rotate about and getting the shading coming from the right direction.
This was the end result of getting the light to shade the particle in the right direction:
The smoke flipbook and normal map was rendered using Embergen.