Hi everyone, I have a few questions regarding combining material instances and textures for performance.
I understand that it is better for performance (reduce draw calls I think?) for models to use as few textures/materials as possible. But is there a guideline on how many there should be, and is there a point where it becomes pointless optimization? For example, what if I combined every character texture into a massive 8k map, and then another huge texture for all environments, then another for all particles. Then in every scene I’d only be using 3 materials at most. Would this benefit performance in any way? Does UE4 automatically do something like this on packaging?
Is it reducing textures or materials that reduces draw calls? For a character model I’m working on, I UV and texture each part separately, so currently I have a lot of materials and textures. I am thinking of placing them all into one texture map, then use UV offsets in different materials to get the UVs to match up. This means I will have few textures but lots of materials, is this bad for performance? My character uses 10 very simple material instances - is this a lot? (See the attached picture if you want to see the material complexity)
Is there a way to automate this process in UE4 or Maya? The only way I can think of doing this is piecing together the texture maps in Photoshop, then manually realigning the UVs in Maya, or importing into Unreal but adding UV offsets to the materials (this would not reduce the amount of materials though). Both of these methods are very time consuming, there must be an easier way right?
Any help or advice is appreciated, thanks in advance!