- Home /
What shaders would you recommend using for static, GI-baked lightmapped objects when targeting mobile with Unity 5?
I'm trying to light a scene for mobile using a baked GI lightmap in Unity 5 and having trouble figuring out which of the built-in shaders to use.
(I guess in an ideal world I would just select the Standard shader and go, but this -- http://forum.unity3d.com/threads/new-standard-shader-performs-weakly-on-android.283386/ -- seems to indicate that the standard shader isn't very performant on mobile.)
In my scene:
Some of my objects just have diffuse texture maps.
Some of my objects have diffuse texture maps and normal maps. (I don't want those normal maps to be used at runtime, but I do want them to be accounted for in the lightmap generation.)
Some of my objects don't have any texture maps at all and just use material color.
Some of my objects have diffuse texture maps and are further tinted by the material color.
(I know that those last two are a bad idea on mobile, and I'm planning on optimizing them out later, but I'm still curious about the answer to this question in terms of those two classes of material.)
So—what's the right shader to choose when generating materials for each of these types of objects to get me the best-looking lightmap but to incur the least performance when rendering the objects on mobile?
I guess the thing that's confusing me most is this: I think the lightmapping system requires a shader that supports lighting in order to light an object properly in the map. (Objects with "unlit" shaders came out really weird-looking in my test bake.) But when I'm running a game on mobile, I'm pretty sure that I want to use shaders that don't support real-time lighting at all to make sure that the my game is running as well as it can.
Are there shaders that basically say "this material should be lit during the lightmap bake but completely unlit and use only the baked lightmap at runtime?"
Thanks in advance!