Dynamic Batching Question

Alright, this one is going to be tricky to explain, so bare with me. I’m working on a Unity iPhone project that is almost done. However, I realized that I was getting around 40 Draw Calls per frame (on average) and maxing out around 60. I really want to get that number down to around 25-30 draw calls. Many of my enemies are prefabs that use the same material, so I was under the impression that they would be dynamically batched. The problem is, that I alter the alpha channel of the material, in order to fade the prefabs in. This will create a new instance material for each of the instantiated prefabs and breaks the dynamic batching. My question is, if I were to programmatically reset the material AFTER I had faded the prefabs in, so that all the prefabs were using the same non-instanced material, would that restore the dynamic batching?

I’m at work, so I can’t try it out now. I’m just hoping someone else has had some experience with this so I don’t waste my time trying. If no one answers or knows, I’ll give it a shot and post my results as an answer.

Thanks! If you want to take a look at the game, I have a video in the Showcase Unity forums here.

Yes, resetting the material will allow dynamic batching to work.