I’m trying to write a per-pixel cel shader that uses ambient light. In my ForwardBase pass fragment shader I do
final.rgb += ShadeSH9(half4(UnityObjectToWorldNormal(f.normal), 1));
but whenever I disable all light except ambient in the scene, everything is drawn black. Everything in my scene uses my shader, and the lighting setup is a skybox with a sun directional light, and nothing else. I also tried to multiply instead of add in the line above and the result was black, so the ShadeSH9 call returns zero. The ambient intensity varies in script but is never zero. Any ideas what I could be doing wrong here?