Sprite renderer lighting issues with just 1 sprite


I’m hitting an interesting issue with my use of the sprite renderer. It appears that with just one game object in a scene using a given sprite material (with the diffuse sprite shader), it doesn’t get lit. However, if I add 2 objects using the material, they both get lit. I tested it extensively with the ambient light turned low and a directional light in the scene. Other meshes (using the mesh renderer) worked fine, however in order to get a sprite to respond to the lights I had to have at least 2 instances using the sprite material in question.

Also worth noting that as far as I can see, it can’t be an issue with my code, as the issue occurs in the editor just the same as while playing - i.e. before any of my code has even run! Similarly, it occurs in an empty scene with just the sprites, a camera and a light, so unlikely to be weird interaction with any other objects.

Anybody an this? Is it a known bug?


  • chris

p.s. here’s an image of 1 sprite not working and 2 sprites working just to show the issue more clearly:

You need to go into Unity>Edit>Project Settings>Quality and increase your “Pixel Light Count” to something like 100.

Good luck