How heavyweight are instantiated materials?
Since I'm working on an RPG I would like to use the same material in different versions for different game objects - say the same texture but with a different color. How expensive is this? I take if if you create them with Instantiate() they share the same texture and shouldn't take up many bytes of main or GPU ram? Or am I wrong about this?
I believe this will prevent batching, and I've thought about a few ways to deal with it, but I'm not sure about the feasibility: -Ignoring for large meshes, since they won't be batched anyway -For smaller objects, given a relatively low number of different colors, use a lookup table to return the same material instance every time the "same" material is requested with the same color. -For smaller objects - use vertex colors instead?
Your answer
![](https://koobas.hobune.stream/wayback/20220612145903im_/https://answers.unity.com/themes/thub/images/avi.jpg)