So I’m attempting to make a system for equipping clothes similar to the one done in World of Warcraft. Essentially, most clothing items are simply another texture slapped on top of the character’s body. Essentially I see skin, shirt, armor, bracer, and glove layers (among others) fitting over each other.
After Googling the idea, I saw that one person used multiple materials on the character’s mesh. When I tried this, the materials were blended rather than layered. Also, I hear that multiple materials like that could be bad for performance.
Alternatively, I figure I could learn to write a shader that allows for multiple layers. But even if this reduces draw calls, it could still pose some problems with the sheer number of textures involved, couldn’t it? A single shader could also reduce my flexibility in allowing for many different types of characters (cartoony ones, for example, which should be allowed to use the same clothes).
I’d say the only real limit I have is that I don’t want to modify the character’s mesh to do it. Since I want many different character meshes to be able to use many different types of clothes, the method can’t rely on having a single model.
If you were to make such a texture-layering clothing system, what would you do?