Hi guys,
Should I do a single large texture or UDIM for an object like Human body?
(what are the pros and cons of them in this situation)
For example:
x1 texture set for Face ( 2048 square )
x1 texture set for Head ( 2048 square )
x1 texture set for Body ( 2048 square )
x2 texture set for Arms ( 2048 square )
x2 texture set for Legs ( 2048 square )
OR
1x texture set for full-body ( 16K )
Thanks for your help.
Replies
Now, i know which way is suite for me Thanks again
Even when the same shader is used, if you have to create different materials for the various UDIM sets used will that be batched into one on a skinned mesh?
Or in other words: Is there no performance impact compared to one texture sheet other than loading and unloading the individual maps from memory?
You need 64 2k maps to make a 16k map
a 16k texture set is approx 1gb of compressed textures (for a metallic roughness material) in one lump.
which you don't want in a game ever
Any engine that can make use of texture arrays (or equivalent system) can render matching materials with different textures in one batch - any engine that doesn't can't.
If you want a UDIM implementation in your game you simply need to write some code that automatically assigns materials to material IDs based on the UDIM standard naming - although arguably that's unnecessary since most DCC packages support UDIMs and can presumably export the information
https://youtu.be/ECAGPkA0l0s
The example above no doubt works but almost all the work the shader is doing is completely redundant when you can simply apply any number of materials to a mesh, tell each of them which texture in an array they should pull out based on supplied meta data (the UDIM stuff) .and then draw them all in one batch.
I'll grant that ten years ago that wasn't necessarily the case but it certainly is now.
Gnoop..Storing it in the fbx either happens automatically or would need a little bit of preprocessing at export - either way, the information about which texture set/UDIM/material is applied to a given face needs to be there and as such it boils down to a face:material assignment.
Doesnt UDIMs in Unreal work like virtual texturing. One giant texture and a lookup table?