I’m running Unity 5.6.5 on an old Atom Netbook (Shader Model 2.0) and the surface normals aren’t being properly calculated:
How can I manually calculate the normals to get smooth per-pixel lighting?
I’m running Unity 5.6.5 on an old Atom Netbook (Shader Model 2.0) and the surface normals aren’t being properly calculated:
How can I manually calculate the normals to get smooth per-pixel lighting?
There are a few reasons your lights might not appear per-pixel:
That’s all I can think of - Good luck!
Thanks for the reply.
If I change the shader to VertexLit I get this which is as expected:
I believe what you’re seeing is an optimization that Unity uses on the lowest quality per pixel lighting. There are no settings to disable this optimization. The only solution is to write your own shaders.
What I believe you’re seeing is what happens when you use a per vertex normalized light direction instead of a per pixel normalized light direction. For directional lights and point / spot lights not close to flat surfaces the artifacts this causes are minor, but a point light next to a flat surface is the worst case scenario for it.
If your art style allows detailed textures, you can texture the surface - which should reduce this look somewhat.
You could also try to add more vertices per square-unit per surface.
If none of the above is an option or yields pleasing results, the solution is in the post of bgolus.
Indeed, when using a standard surface shader the problem disappears. Thanks for the info.