Home Technical Talk

How many textures sets for game-ready character?

DustyShinigami
polycounter lvl 4
Offline / Send Message
Pinned
DustyShinigami polycounter lvl 4

Hi

Obviously, this depends on the project/game/scope/requirements etc. but what is a good maximum amount of UV sets for a character to have?

I mean, with the Arthur Morgan model I have from RDR2, he has roughly around 19-20. Literally one texture set per object/accessory/item of clothing.

My current character I'm working on has around 11 so far. Twelve once the hair has been done. My characters at the moment are only for portfolio pieces though.

Replies

  • Fabi_G
    Online / Send Message
    Fabi_G insane polycounter

    If I remember correctly, the Arthur Morgan character is modular, so it would make sense that different modules are on different smaller sets to avoid loading textures that are only partially used. If your character doesn't need this, you can pack more on one set, mainly splitting with texture resolution and shader model used in mind. Could also check more resources, such as Epics' Paragon heroes. And as you state yourself, it depends. Might get more actionable answers when showing the specific character you are working on.

  • Firebert
    Offline / Send Message
    Firebert polycounter lvl 15

    For your portfolio, do what you want.

    For production, it depends on the platform.

    Nintendo Switch (for instance) is limited on UV sets to 4 or 6 max. While that is an extreme case on a platform that requires immense optimization, the fewer UV sets, the better. It would be good to also look into vertex color masking options to expand the material's capabilities while utilizing the same number of UV sets. For instance, you could have hair and skin on the same UV set, but because you've masked the skin mesh vertex color in Red and the hair mesh vertex color in Green, you can still use the same UV set with the same number of texture samples.

  • DustyShinigami
    Offline / Send Message
    DustyShinigami polycounter lvl 4

    Okay, cool. Thanks for the reply. For baking, I'll usually have certain elements sharing a UV set, such as a belt, belt buckle and a belt holder, but I'll have them as separate meshes from each other so they have their own high polys and bake cleanly. Then, I'll combine them back together afterwards.

    I'm a bit unsure about the vertex colour masking. I'm not sure if I've already done something like that before. I mean, I've used ID baking/masking, but I'm guessing that's a separate thing...?

  • Firebert
    Offline / Send Message
    Firebert polycounter lvl 15

    This is a super simple example in Maya and UE. The base mesh is modeled as is, UVs are exactly the same and laid out in the first channel for both cubes.

    The material in UE is setup to apply specific elements to only one of the vertex colors (very rudimentary example).

    Viewing and assigning vertex colors differs amongst DCC (Maya, Max, Blender, etc.), but if you utilize this method you can expand on the shader code logic to mask appropriately to meet your asset's specific needs while keeping UV sets to a minimum.

  • DustyShinigami
    Offline / Send Message
    DustyShinigami polycounter lvl 4

    I see. Interesting. I'll have to give that a try next time. I take it the UVs for those cubes are overlaid...? Or are they separated within the 0-1 space?

  • Firebert
    Offline / Send Message
    Firebert polycounter lvl 15

    totally overlaid, exactly what you want in order to achieve the largest UV space/texel density per mesh, all on one uv set. For organization/visualization in Maya/Max/etc, you can offset the UV's by 1.0 + or - in the desired direction so you can work with them easier, but it isn't necessary if you either combine meshes in your final step or just export it all as one mesh and combine the meshes on import in UE for example. If you get into shader code more, there's some really fancy stuff you can pull off by masking actual UV coordinates at specified quadrants of the grid inside and outside of the 0-1 UV space. I'd recommend looking up some shader code tutorials or courses online. There is a ton of beautiful work that you can pull off in shader code that saves on performance while allowing for tremendous flexibility in creativity for the final visual.

  • DustyShinigami
    Offline / Send Message
    DustyShinigami polycounter lvl 4

    Awesome. I'll definitely have to look further into that. The vertex colour masking sounds super useful, thanks for sharing it. :)

  • DustyShinigami
    Offline / Send Message
    DustyShinigami polycounter lvl 4

    Wait. Does this mean you can overlay totally different UVs on top of each other? For instance, I have jacket buttons and vest buttons, which have their own UV sets. They’re similar meshes, but not quite, I could technically combine them all together, even if the UVs don’t align on top of each other and separate them using the Vertex masking, right…? They should still appear as a separate UV set in Substance Painter as well if they have different materials?

  • Neox
    Offline / Send Message
    Neox veteran polycounter

    if the geo isnt the same, it only works for everything but tangentspace normalmaps. so if you go for a normalmapped character, make sure the topology is identical. or the normalmaps are made completely flat, not baked from high to low geo. with hard edges and flat geo you might also get lucky, dependent on how close you go.

  • DustyShinigami
    Offline / Send Message
    DustyShinigami polycounter lvl 4

    Sorry, I'm a little unsure what you mean. 😅 I'll have to show the geo/UVs in question.

    These are the buttons:

    They are essentially the same design, though different sizes. The main difference is that the one on the left has cotton stitching in the middle.

    Here are the UVs for the green button, overlays offset. The stitching in the middle have been separated into two pieces for the baking and given its own material ID. They all fit in the same UV grid if combined:

    And then the smaller buttons, overlays offset:


  • Neox
    Offline / Send Message
    Neox veteran polycounter

    this should work fine. just make sure the triangulation is identical on all the pieces, to not get bad surprises in the highlights.

Sign In or Register to comment.