So I have recently started to look into optimizing a medium complex 3D scene, more specifically i am looking to improve the performance i get from a fairly realistic bus. I am currently using the Unity3D standard shader. There are a lot of different objects within the scene, most of which are repeated and instanced. While many individual objects require only limited color variance often enough just a solid color and no texture at all.
I have read a lot about batching and atlasing but can't quite find an answer on the trade-off of using textures when no textures are required. I understand that reusing the same material allows for batching and can greatly reduce the amount of draw-calls, however how does this compare to the complexity of texture mapping if this could be avoided entirely? Is it still good practice to atlas solid colors on very low resolution atlas-textures and thus combine materials together? How does it look if i intend to use metallic and smoothness maps as well? Does it all come down to scene complexity and a number game or is there a straight answer?
I have the same uncertainty when it comes to objects which are made up of an arbitrary single digit number of solid colors; given supporting geometry, is it better to assign different materials with solid colors to regions of the object or create low-resolution textures?
In general; what is the point at which atlasing becomes the worse choice?
Thanks in advance!