Hello Polycount!
Im learning Game Art and I have a few questions that I would like to ask you
I decided to start my first topic because I want to learn how to create models in proper way.
p.s. English is my second language so forgive me the mistakes
__________________
In this case Ill be asking you about stretching the UV.
Suppose I have the UV like this:
(In the picture head is 1.5x bigger than it should be, which is my last question on the bottom)
I unfolded the entire wireframe of my model and on the top(side, whatever) remained a big chunk of free space and I do not have anything to fill it.
Suppose no matter how I rearrange elements there will always be a big chunk of free space, somewhere.
Here is the question. What to do with it?
Make bigger the gaps between the elements?
I think its pointless. Im wasting a lot of space this way.
And here we go, the main question:
Can I stretch the wireframe like this?
UV will stretch, I am aware that and it could be problem while texturing (e.g. symbols, logos which has to be stretched too then). But otherwise there is no space wasting.
Some people dont like wasting UV map space.
The people with whom I create models suggested me to do some stretching to avoid wasting space on the UV map. I was taught that place UV map is sacred and should not be wasted
so I should cram elements as tightest and then stretch the UV map to the entire square.
No free space left? = success!
What do you think about it? It's bad/good thing to do? Or what else can I do instead?
And another little question.What about enlarging elements which contain e.g. head (just important part of model) for better detail. Its OK?
Thank you in advance for your answers!
Replies
This is what I did with your uvs. The only thing I scaled was the head. I only scaled it down a tiny bit to give it some padding. I just rotated everything else by increments of 90 degrees and flipped horizontally and vertically until it all fit.
That hair piece is really difficult to pack around.
You don't use it, save it for the future. Maybe you will find some small piece of geometry that is a waste to have an entire new texture for it, so you put that UV inside this old UV with chunks of space. Also saves memory consumption if it is a game.
my example:
Models will have funny shapes of UVs, and dont even try to fill it up all the UV space. As long as those parts you want to have a higher detail res, you keep them as big as possible and to scale. For the ones that aren't so visible, you can shrink them down to a smaller ratio and so they cover less resolution. The space you didn't use will never be a problem for you because, if it's not used, it's not used. What can happen to it? nothing. But it's a waste, well you can always fill them up later with something else. (Black space in a texture in game engine is usually compressed to use 0 byte)
I like what jesse did, but on the flip side, you could take the opportunity to make some of the mirrored bits unique. If this is a quadruped, there is a high probability you'll see all 4 legs at the same time, so you might want to un-mirror them. Since there will be a seam running down the back, maybe un-mirror the body.
It turns out that I had been taught incorrectly concerning unfolding UV maps.
Question to remotecrab. Could you explain the thing about understanding what gives stretching UV?
Also one more question. It's a good practice to place near the elements that are "made" of the same material? Skin near to the skin, metal next to the metal, bone near to the bone?
If it means a lot?
Thanks!
I made this a while back.
https://dl.dropboxusercontent.com/u/70269048/uv_mapping%20_thoughts_skankerzero.jpg
For example, when it comes to lowpoly graphics, it's perfectly fine to stretch and pinch UV's. Hell, sometimes I even turn shells into a single line (1D is all you need for a gradient) or even a point (0D is all you need for a single color).
But yes, for high-res assets, scaling in one direction is usually a bad idea. Scale all shells - or the ones which requires a higher texel density.
What I meant by understanging UV, is that you need to see what it does and determine yourself. Sometimes it's hard to learn just by reading.
And, the reason for same material to be placed close together is that:
Game engine usually use Mip-map, and something like Level of Detail. Anistropic filtering, etc. Those things will down size your texture at distance. And if your texture got down-sized, it means the UV-island gets closer. It may come to a point where UV-islands are so close to each other that they start to share same pixel from your texture,(because it only has 4 pixel now)
So you know, the edge of the mesh where the UV is sharing pixel will display the pixel of the other material. Texture Bake padding also can cause such issue. And it's not wanted. Putting same material pieces together can avoid it to some degree. But it's not necessary.
Also, credit to skankerzero, for organizational purpose.