- Home /
Why do docs claim that less vertex lights are sent per pass in forward then Vertex Lit
In the docs for forward mode it says this:
In Forward Rendering, some number of brightest lights that affect each object are rendered in fully per-pixel lit mode. Then, up to 4 point lights are calculated per-vertex.
But in the info about the shader variables it talks about 8 lights per pass: http://docs.unity3d.com/Manual/SL-UnityShaderVariables.html
Vertex-lit rendering (Vertex pass type):
Up to 8 lights are set up for a Vertex pass type; always sorted starting from the brightest one. So if you want to render objects affected by two lights at once, you can just take first two entries in the arrays. If there are less lights affecting the object than 8, the rest will have their color set to black.
I'm hoping/thinking of being able to use the 4 most important "non-important" lights the docs claim you get in the forward base pass, combined with vertex lit passes with 8 lights per pass, BUT actually using pixel shaders and proper shading instead.
Being able to calculate 4-8 lights per pass for forward mode objects would make it MUCH more reasonable having such in the scene. (We use deferred mode in general, however semi-transparent objects and special type objects can't be handled by deferred...
If I can use the Unity lights and unity's application of them per-object without having 1 draw call per light per object for forward stuff. Well, that'd really open some doors!