Layered Textures/Materials

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?

Quick bump. Hope the title isn’t too bland. :stuck_out_tongue:

I’d go for the layered shader which is IMHO the fastest and most elastic system for this thing.
But surely having a single mesh is a limitation as not all dresses have the same form.

Alright, perhaps I’ll learn how to make a layered shader then. Sounds like it’d be the least processor-intensive method.

This texture-layer clothing will allow lots of flexibility in designing new clothes, since all clothing needs to fit all characters. If the shape isn’t exactly right and the skin shows through under the clothing mesh, then the skin is already covered with the clothing texture.

Thanks for the suggestion!