Is changing emissive strength of a surface appearance meant to be an individual draw call?

I was investigating the cause of hundreds of draw calls in my game and noticed an interesting pattern.

As you see, only 7 draw calls in the scene. each of the spike and wall have their own surface appearances, with the exact same properties. the renderer batches them all as expected. However:


When my code which individually fluctuates the emissive strength of each wall runs, it causes hundreds of draw calls.

Expected behavior

I expected draw calls on surface appearances to be batched if the only difference is emissive strength. even with all the same properties, changing emissive strength creates a new draw call.

I made a simple change that was a really good compromise, but the question/point of this point still stands. instead of assigning each surface appearance essentially random noise, thus each one having a different value, I just assigned each surface appearance to follow 1 of 5 randomly fluctuating values, and re rolling what value its following every once in a while. In this way there’s 5 draw calls and it still feels like they’re all randomly fluctuating.