I have a big scene. Static batching decrease draw call but I tested performance of batching at Android phone.
With Batching: 30-34
Without Batching: 40-42
What can cause it? Should I dont use it at this game? Can it be related with this spesific test phone (Mi 5X)
Static batching is not a silver bullet. It depends on the context wether or not you should use it. It generally is a good solution, but there can be certain situations when it’s not quite applicable. Sometimes, if you want to draw a massive field of grass, for example, it may be better to use instancing or populate geometry manually via special shaders or per-tile on the CPU. Alternatively, static batching can perform quite bad if you want to crank as much geometry as possible into it with a special shader that does alpha-testing (and that one leads to performance issues with Z-Test).
You’re probably facing a situation when it’s indeed not quite applicable.
What is in the scene? Lots of grass, bushes, trees?
There are lots of buildings also there a lot of repeating mesh. No grass, bushes. There is tree but it is low poly and mesh.
That is a concern for wether or not you are CPU bound. Unity’s Static Batching, althogh helps CPU in the draw calls department on the render thread, does not help the CPU on the main thread where some operations are performed synchronously with wide jobs, so stuff like bound updates and culling are still performed per-renderer. Your performance could’ve dropped there.
I suggest you to profile the game and compare your results (batching vs no batching) using Profile Analyzer.
Okay. Is it possible to show a wide screenshot of the scene, with the buildings and stuff in it?
Of course, https://ibb.co/d7ZdYMK