I use StaticBatchingUtility.Combine() to combine meshes right after a scene is loaded to reduce draw calls. I use it at runtime rather than build time (through the player settings static batching check box) to save on build size.
In Unity 3.5.7 this worked fine on all devices. I just upgraded to Unity 4.2.1 and it works fine in the editor on Mac and PC but when I build to iOS all the meshes under the combine root simply don’t render.
This is a big issue as the increase in draw calls is going to kill my performance.
Has anyone got a workaround? Is this being fixed?
Bump. Seriously. This needs fixing.
What was the case number you got when you submitted this bug? I looked for it using your forum email address, but didn’t find it. (If you’ve not yet sent in a bug report, please send a trivial reproducible so our QA and dev teams see what you see.)
Sigh… ok, I’ll try get onto that shortly.
So I fingured out how to reproduce this. Turns out to be really obscure.
The bug happens when you do all of these things:
- Model has Mesh Compression on.
- Model has normal import set to off.
- A shader on the Renderer has a normal bind.
- The asset is placed under an object that gets Statically batched with the StaticBatchUtility at runtime on iOS.
I submit the bug through the Unity bug reporter. Case 565183.