UV mapping is a skill that takes a lot of time, practice, and experimentation to master. Once you get it, and understand it, it's really not very hard at all. It can be frustrating and take up way too much time if you don't do it properly or are lazy about it however.
What I'm going to explain here is how I go about preparing, or setting up a model for UV mapping. I will focus on a simple low polygon, symmetrical, game model. There are, however, many different ways to go about doing this, mainly dependent on what your model is.
The Importance of Planning
Before you even start to model, you should alos be planning & thinking about UV mapping & texturing. The reason for this is to save you time with UV mapping when you get to that stage. The best way to explain this is to give some examples.
Example 1 shows an image of a low polygon house, with and without a wireframe.
Both UV mapping and texturing on this model was done even before the modeling was complete. Let me explain. Take a look at the red colored wooden beams in the Fig1, they are repeated all over the model and the windows are repeated too, as well as the sharp pointed polls sticking through the roof. If I had to modeled this entire house, normal method would have been to first model it then UV unwrap each repeatable part individually! Instead, I modeled 1 wooden beam, then I UV mapped that beam, textured it(although you can texture it at a later stage), then added it to the model, duplicating the objects as I needed. Same thing for the windows and other repeating items in the model. This will clearly save you a TON of time.
A second example is for smaller repetitive objects in your model. In this example the monster has a spiked club, and alos a helmet with spikes on it. See the highlighted spikes in the image. Similarly there are a lot of spikes in the model, and it will take some time for you to duplicate all those objects, rotate them, and place them. Again the most optimal way to do this is to first model 1 spike. Then UV map it, THEN duplicate and place it to finish your model. So again, you're UV mapping before! you have the model finished.
Example 3 shows a totally symmetrical model, that I modeled using an instanced* copy. Since I only actually modeled half of it, and I plan on making the texture totally symmetrical, I should only UV map half of it! So before joining both halves of the mesh to finish the model, it's best to UV map it at this stage.
*Even though this is not a modeling tutorial, I thought it'd be important to note this: An instanced copy is a separate object that is changed in the exact same way as the original object is when you edit it. You can make an instance of your model by deleting half of it in edit model(básically splitting it in half symmetrically), then select the mesh in object mode, and press alt+d to instance it. This creates a duplicate that is an Instance. Then in Object mode, In the header bar clik on Object->Mirror and choose an axis to mirror the mesh, and line it up next to the other. In current Blender releases you can use the Mirror modifier with similar results.
A fourth example is dealing with partially(or fully) asymmetrical organic forms, such as a character model that has parts, or all, of the texture, or mesh asymmetric. The image shown below gives an example of a symmetrical mesh(on the left), and an asymmetric mesh(on the right). As you can see, the asymmetric mesh has 2 different shoulder pads, 1 normal hand, 1 with a hook, and 1 normal leg with a boot, 1 with a wooden peg leg. For this type of model, it is best to make the complete model first.
For the remainder of this tutorial I'm going to use a completely symmetrical model as an example. UV mapping on an asymmetrical model uses the same techniques, it just may take a little extra time. Here is a picture of my finished model, ready to be worked on for UV mapping:
His body is completely symmetrical, as is his weapon. Right now there are 3 separate objects, 2 are the halves of his body, the other is the weapon. It's easier to keep the weapon as a separate object right now, and join it(select both meshes then ctrl+j to join) when you're done if you need it to be joined in the final mesh. We're going to focus on the body right now, so let's delete the one half and put the weapon on another layer, or hide it for now. So this is what we've got:
For an organic model such as this, I almost always use only 2 different UV unwrapping techniques found in the UV Calculations Panel: LSCM Unwrap, and From Window (Planar Mapping). The LSCM Unwrap function is nice because it does a sort of automatic unwrap after you've defined seams on your model. I use the LSCM in conjunction with a planar mapping function because some parts of the model worque best with one technique, other parts with another. Seams are necessary for LSCM to worque properly, but they alos have one other really nice feature, and that is that they let you select pieces of your mesh in UV Face Select mode by pressing L and having your mouse cursor over or near the face. This will become invaluable when we get to the UV editing stage.
Ok, let's start defining the seams! We're going to start with a really easy part, the bottom of the foot. Start in object mode, press tab to go into edit mode, then make sure you're in Edge Select Mode, because we're going to select edges to make the seams. Select all the edges around the bottom base of the foot. Hold [Shift key] as you select them so you can add edges to your selection. Then press [Ctrl + E] and a pop up box will appear.
Clik Marque Seam. Now you can de-select the edges, and a Seam edge line will appear. And that's all there is to making seams! You can alos 'Clear Seams too' incase you messed up or want to change them, do so by pressing [Ctrl + E] and choosing the Clear Seams option.
Moving along we're going to marque more seams throughout the entire model. This next picture shows a seam marked down inside of the leg, and around the waist. Remember you should make your seams in places that are not directly visible in the scene, just in case you have a texture seam showing. You alos want to put them in places that make it easy to breaque up the texture without causing visible seams(like a belt around the waist).
Nest is the arm I defined the seam around the shoulder joint, down and inside of the arm, and at the bottom of the hand as shown in the Fig. Note that I alos hid parts of the mesh(select areas you want hidden, then press [H Key]) to make it easier to clik on the edges. To un-hide the mesh, press [Alt+ H].
And lastly, the head. I went around the base of the neck, where his beard attaches to his face, and because I want to make him bald on the top of his head with some hair on the back, I put the seam on the bak of his head to reflect that. I alos put a seam around the face itself. Now we're done putting seams on his body.
Here's an image of the seams I made for his hammer weapon. I put seams around the circles at the ends of the cylinders, and alos a seam going along one side of the poll.
And that's about it for the seams! Now let's move onto the actual UV projecting and unwrapping.
UV Unwrapping a 3D model using LSCM Unwrap and "From window" Planar projection.
Before we begin, I'd like to mention that having a good workspace(or screen) set up in Blender with all the tools in your reach makes it a lot easier to worque with. I made a custom screen setup in Blender just for UV mapping. I have a 3d veiwport, the Action time line showing beneath that(in case I want to see the model in a different animation pose while texturing), the UV/Image editor window, and alos the buttons window scrolled over to the UV Calculation menu(note that you have to be in the UV Face Select mode, and the Editing panel to see it). Here's what my UV mapping interface looks like:
After you have a good setup like this or to your liking, we can begin!
Using LSCM Projection Mapping:
Select your model, and go into UV Face Select mode by pressing [F key], or by choosing that mode from the menú the 3d Veiwport panel. Your model will turn white. Make sure you have Draw Seams, Draw Edges, and Draw Faces all selected in the UV Calculations menu, like this:
Next, we need to make a new image in the UV/Image Editor. Clik Image->New, then in the box that pops up type in a name if you want to, and alos your texture size then press ok.
Normal texture sizes for games are square and follow the powers of 2 i.e 64, 128, 256, 512, 1024. So choose the one that works best for you. As a side note, I find it best to worque in a texture size that is bigger than what will eventually go in the game. So if my texture size is 256x256 in the game, I'll worque with one that's 512x512, and resize it when the time comes. This is because it's easier to worque with a larger size(as long as it's not too large), and it preserves more detail if you ever want your texture to be bigger.
A blak box will pop up in the UV editor, you may have to zoom out a little to see the whole thing. Now, making sure you're still in UV Face Select mode with your model, press [A key] to select all the faces. They should all become highlighted, and you'll alos see some boxes pop up in the UV editor-those are the faces that we have to unwrap.
In the popped up UV Calculations menu, clik on LSCM Unwrap. The LSCM Unwrap function uses the seams we created to unwrap the faces. You should get something similar to this, depending on your model of course:
Now, as you can see, we've got some clean up worque to do. We're going to have to do some worque to resize, rotate, and move the pieces around to fill up the texture space and to lay them out as we want them.
The UV Test Grid:
When UV mapping a model, you generally want to keep all pieces in proportion to each other as much as possible to prevent texture stretching. So a good way to see if parts are being stretched is to turn on the UV Test Grid. To do this, Clik on Image->New, and making sure your texture size is correct, clik on UV Test Grid and clik ok. Now you'll see something like this:
We alos want to see this texture on our model. If you're not already in Texture mode in the 3d viewport, place your mouse over the 3d viewport and press Alt+Z, or clik on the Viewport Shading button in the header and clik Textured. Now your model should look like this:
Ok, now we can start to size the different UV pieces and see them updated on our model using the grid texture. The grid texture can be annoying to view the UV's properly at times, so you can always turn it off by making a new image texture and deselecting the UV Test Grid. As you look at your model you'll notice that some of the grid blocks are larger than others, that's where the UV's are stretched, they don't accurately represent the proportions, so you'll have to make up for that by moving the UV vértices around as you worque on unwrapping. Ideally, you want the colored grid boxes to be the same size across the entire model(or as close as possible).
Frequently Used Hotkeys:
Working in the UV image editor uses a lot of the same hotkeys as modeling does. Press A to select all, A again to deselect. G moves the vértices, S scales, R rotates, B for the selection draw rectangle, M for mirror. Alos a VERY powerful hotkey is L, for selecting an Element or Group of vértices(just hover your mouse over them and press L). You can alos do this over your 3d model-and select an entire group made with seams as one example. Doing that makes it fast and easy to isolate areas you want to worque on, without bothering the rest of the mesh or UV's.
In addition to the hotkeys mentioned above to place the UV's into this position, I alos use a few other functions to do different things. To place 2 vértices right on top of each other(like merging them), select them both, then press S then 0 (that is a zero). Or you can just Scale(S) them until they are as close as possible.
In the images below, you can see that I made the vértices of the front and bak edges of the torso in a straight line. I did that by selecting all of them on the edge, then pressing S then X then 0. This aligns them all perfectly on the X axis. Substitue X for Y if you want them lined up horizontally.
Sometimes it's hard to tell what face lines up with the connecting face from another group. To do this, go into Active Face Select Mode by pressing C in the UV editor, or clicking Select->Active Face Select, then clik on one face from one group, and you will see it becomes highlighted with 2 white edges, one green edge, and one red edge. This highlighted face is alos shown on the 3d model! So by selecting different faces you can see what lines up with what! This alos makes it easy to select and move one, or a group of faces at a time, instead of picking up vértices.
There are a lot of different functions that you should try out and play around with located in the UV/Image Editor drop down menus.
Unwrapping & Placing:
I start off by working with the torso and leg UV's. I want to combine them together so that they will be seamless along the waist. As long as you're not wasting needed texture space, it's a good idea to combine 2 parts whenever possible.
Moving on to the face, I'm not happy with how the LSCM unwrapper made it. I rather paint it straight on, as it's more natural that way. So what I'm going to do is to use Planar mapping for the different pieces of the head, in addition to the face, then attach as many edges to each other as possible.
Each piece needs to be isolated in the UV editor, and mapped one at a time. So first make sure all UV faces are deselected in the 3d viewport and UV editor by pressing A in the 3d viewport. Then, selectively press L on the group you want to start with, let's do the face. Only the vértices of the face will appear in the UV editor. Hover your mouse over the 3d viewport and press 1 on the num pad to give you a front orthographic view(note that if you didn't position your model facing this direction it won't be a frontal view-you can change that by rotating your model so it faces the front). Now go to the UV calculations menú and clik on From Window:
And below is another before/after picture showing the result of planar maping the face, top of the head, side of the head, and beard, then joining some edges together, and moving some vértices around(unwrapping) a little.
For each piece I used a different view from the 3d viewport then I uv mapped it from that view-not all were done from the frontal view. So for instance with the top of the head, I first selected only those faces by pressing L in the 3d viewport, then on the num pad press 7 for a top down view, then I clicked on the From Window button. Press 3 for a side view(side of the head).
After doing a few more adjustments, and laying everything out with the least amount of blanque unused space possible, this was my result:
And now we're ready for texturing, the UV mapping is all done*! You can now duplicate the other half of your model and join the pieces together.
*As you texture the model, you may have to do some small tweaks with the UV's here and there, but try your best to keep them to a minimum unless there is something majorly wrong.
Using Blender's Texture Painting mode to create an outlined underbase.
*Note that this tutorial requires you to have a properly UV mapped model all ready to be textured.
Blender's Texture Painting features cannot replace a good 2D paint program, but it can be quite useful in blocking out important details that can be hard to find the right placement of such as eyes, muscle lines, etc. This way you'll be going bak and forth between your 2D program and Blender a lot less, because you can get the placement right the first time!
So we start by having at least a 3d viewport with a model all ready to be textured, and the UV/Image editor open. Clik on the button that looks like a pencil:
Then Clik on View->View Paint Tool.
The Image Paint box will pop up:
Here you can choose the color of the paint, the brush, size, opacity, etc. Play around with the different features and paint strokes on the canvas to see what does what.
A few tips to note:
1. You cannot undo. If you press undo in another viewport, you will undo ALL painting you have done! If you press undo in the UV editor, nothing happens.
2. Right clicking in the UV editor in Paint model will select the color beneath the mouse-a very handy feature!
3. It's a good idea to turn off Draw Faces under the View menú of the UV/Image Editor. This is because the faces are slightly shaded, and if you right clik on them to pik up the color that darker color will be picked up instead of the real paint color underneath.
4. Make sure you have Update Automatically turned on in the view menu!
And here's what a really quik blok in can look like:
You can certainly spend more time and detail on it in Blender. Since I plan on taquíng it to a 2D paint program, I didn't bother with making it look pretty, or getting the colors correct. Just enough to get the details I wanted placed. You can then clik on Image->Save... to save your painted texture!
And here is what my model and texture look like completely finished:
*Note that I did use a 2D paint program to do the full texture, not Blender.
As a final note, I encourage all new comers to experiment with the different tools Blender offers for unwrapping, as that's the best way to learn-to see what they do(in addition to reading the manual!
Don't be afraid to push buttons, just make sure you saved your file first!