Hi everyone. I'm working on a model to export it to Unity. The model is a character and it consists of several meshes (body, hat, eyebrows, sunglasses, etc.). I would like each mesh to be kept separate to be able to animate the character correctly, but I have a doubt about the way to unwrap it. At first I thought about working on each mesh separately, but unwrapping all meshes at once and using only one texture for all of them would be much more convenient (and thus not having a kilometer-long texture folder).
Is it an ok practice to do this or is it better to make each mesh with its own texture as I thought initially? Thank you in advance.
Replies
The game chars do have one or two texture sets. Sometimes three for extra gear.
On some games the chars does have multiple outfits. So every part does have its own texture.
Its up to you. Make it look cool and dont worry to much about textures.
The only times that isn't the case is where many objects use the same sort of surfaces and can share a small number of textures between them or if the resultant texture is so big you cant fit it in memory
I'm not familiar enough with unity to be certain in that.
With that approach you're loading more separate textures which can be a bottleneck in some circumstances.
Neither is wrong, you pick the best approach based on everything else that's going on.
Like Obscura mentions, examples like skin shader make sense too, especially if your skin shader requires an additional subdermis or thickness map or something like that. If 70% of it went unused that's pretty wasteful as well.
Draw calls (how many materials are applied to one mesh) may be an important consideration as well but this can vary somewhat and most modern games/engines are probably only draw call limited in cases where you're seeing the same asset 100s of times on screen. For a main character or something like that whether it has 1, 2 or 3 draw calls is unlikely to be significant. The complexity of the individual shaders will be much more important.