I have modified a shader created from a surface shader with a ForwardAdd pass (“lightmode” = “forwardAdd”). It works well when the lights are close to the mesh, but when they are away the pass is not called anymore. I would like to force the call of this pass, how should I do that ?
I have tried to set the bounds of the mesh to great values, the pass is called but some other problems appear, like the UV are not in the right position. If I set the pass as “lightmode” = “Always”, the uniforms of the point lights and spotlights are empty.
ForwardAdd is explicitly for rendering additional real time lights and it will not render otherwise. It renders the pass once for each light past the first directional light. If you need something that renders all the time you must use the “ForwardBase” pass, or add an “Always” pass as you attempted, but these will not have information about additional lights.
Thanks, so If I understand correctly, in the “ForwardBase” there is only the directional light and no other information about point light. If I want to add a pass with point light I have to use a pass which is set as “Always”. So how to get the point/spot lights information in the pass “Always” without listing all the lights in the scene and sending information to the shader ?