This week I was cleaning up some models, making a couple new models, and doing a UV unwrap on this character.
There are about seven thousand tutorials on UV unwrapping available one google search away. I don’t think it would be worth your time if I did another one. If you ask me in person I will gladly walk you through the process in my own inimitable monotone fashion. You will probably fall asleep before we get to seam placement. So here is a quick, high level overview of UV coordinates and UV unwrapping. If you are at all familiar with 3D modelling and UV layout, this will be pretty boring for you. Feel free to leave now, and I’ll see you back here next week. Also you could just jump to the bottom where I explain why none of this will matter soon.
A 3D model is just a collection of points in space. For this character, a little over 1300 of them. They all have 3 coordinates that describe where they sit in space relative to some arbitrary zero point, or origin. You have x position (Horizontal), y position (Vertical), and z position (Depth). Some folks like to swap the y and the z, since z axis rising up perpendicular to the plane of the earth is how it’s usually done in aviation. Unless you’re some sort of heathen, x sits on the horizontal where it belongs. Whatever orientation you go with you put three numbers in the x, y, and z slots for each point. From any 3 points in space you can create a triangle. Making a 3D model is really just managing these triangles. Those 1300 form the corners of 2600 triangles. You move them around, add and subtract them, until it looks like whatever you are making. Sort of like Michelangelo freeing the angel from the rock, but in reverse. And with at least twice as much computer power.
So what is a UV then? Well after you line up all those triangles into something recognizable, you might want to paint it. Those points and triangles aren’t really anything. They are groups of numbers in a computer. Kinda tough to paint on math. But what you can do is take all those points and triangles, cut them apart and lay them out flat. You know when you get a paper model in a book or on a cereal box or something? You have to cut it out and then fold the paper so the edges come together to make some sort of three dimensional shape. Laying out UV coordinates is the opposite of that. You take this perfectly good model, mark the seams where you want it to come apart and then spread all the pieces out flat. You arrange the model pieces in a totally separate set of coordinates. The model sits in xyz space and this new flattened version of it sits in UVW space. UVW - xyz... yep, clever as it sounds.
Now that you have everything laid out flat, and organized you can create a texture, or image, that is also flat. The points on the UV coordinate system will match up with their corresponding points in xyz space. The texture will stick to the same places on the model as they do on the UV layout.
You might say, “hey wait, you said UVW. What’s the W for?”. Just like the xyz coordinates the UVW system also has a depth element to it. It lets you do fancy stuff, like fake reflections and procedural volume textures. Probably nothing you need to worry too much about.
UV unwrapping is one of those tedious, but vital steps in setting up a model. There are a lot of tools that can help you speed up the process, but you will have to do it, and it probably will suck at least a little. It’s all right though, we probably won’t be doing it for much longer.
There are a few new tools that will automatically generate UV coordinated and pack them in ways that are not very photoshop friendly. While you probably couldn’t make heads or tails of these image maps, they are really not meant to be viewed in 2D. They are for painting 3D models in 3D applications, for 3D applications. There are a few issues yet, when dealing with real time environments like game engines, but they are already very common tools at use in CGI production and animation studios. It’s really just a matter of time before the tools and the pipelines make their way into game development. When that happens, you probably won’t have to deal with UV maps again. I think I will be just fine with that.