Changing scale denies dynamic batching

Hi guys, long time.

Trying out the new Unity 3 and am super impressed. Question: dynamic batching. I have a bunch of asteroids (29 verts) in my scene that have the same mesh and material, just scaled to different, random amounts. If I take out the scaling, they’re all batched (sweet!) but if I put it back in, each asteroid gets its own draw call (boo). Is this what you’d expect?

// NOTE that changing the scale disables dynamic batching
var scaleFactor = Random.Range(minScale,maxScale);
asteroid.localScale = new Vector3( scaleFactor, scaleFactor, scaleFactor );

do you change the scale on the material too or just the model? cause touching the material in any way creates a clone

I don’t unless localScale modifies it implicitly. The asteroids batch when the code above is commented out, and not when the code is being executed.

I’m cool if this is expected behavior, but I’d LOVE to cut down on like 80 draw calls.

To make the issue easy to see, I’ve uploaded a project folder. The project contains a script AsteroidFieldGenerator with two commented blocks. Uncomment them and watch the drawcalls leap.

396052–13598–$AsteroidTest.zip (194 KB)

today i got this problem too.

anyone solve this?