UV unwrapping and texturing is a lot like papercraft. In order to texture an object, you must first deconstruct it into workable pieces (the head, the torso, the arms etc.), then unwrap them into flat, 2d pieces called UV shells. These shells are then sewn together into a UV map and imported into Photoshop or a coloring program of your choice. After texturing, you apply the new texture to your object.
After you have modeled a character or object, the next step is to texture it. The process of texturing proceeds in two stages. First, we must create a suitable UV map for the geometry. Second, with this UV map as a guide, we can paint the surface color of the model into a texture using Photoshop. We will be using the Dragon Whelp file for this assignment. Save and open it to begin. We are going to open Dragon Cove towards the end of your assignment. Don't worry about it now.
-
Most of the work of unwrapping the model will be done in the Window → UV Texture Editor. As you can see, the UV map for the model right now is not very clean or organized. Placing a texture onto this UV map will create really bad results.
-
To make the UV unwrapping process faster, we will first delete half the model. We will unwrap one half and then duplicate the other half over. The duplicated half will have the same UV layout as the other side. You don't have to worry about unwrapping the eyes, claws, or horns. You may want to hide them until render time.
-
Next, we will divide the model into various patches or shells. Each of these selections will be a connected set of UVs in the UV map. For each shell, select a set of faces. You will probably find the Paint Selection Tool very useful in this task. Isolate Select is also useful for selecting pieces of geometry that are hidden in one another. Once you have selected all the faces of a shell, go to Create → Sets → Quick Select Set... and give the shell a name. This will add the set to your Outliner. You can now quickly reselect the shell by Right-clicking the set and selecting Select Set Members. You can also Add to Shelf which gives you a one-click button your selection.
Create the shells below: Tail, face, front of hand, back of hand, arm, bottom of wing, top of wing, body, leg (can be the entire thing or top and bottom), top of foot, and bottom of foot.
- For each shell we will choose a projection from the Create UVs menu that we think will give us a good initial UV layout. Select the faces in the shell, apply a projection, and then adjust the projection manipulator as necessary. The example below uses a Cylindrical Mapping for the tail section, since the tail is roughly cylinder shaped.
Your cylindrical mapping manipulator will most likely appear vertical contrary to the tail's angle. To fix this, click the little red T on the corner of the manipulator to toggle between scale/rotate/move. To rotate, first click the blue circle on the manipulator to access all the rotation axes.
As you lay out your UVs, it is a good idea to apply a temporary texture to the model to see how it is affected by the UV map. Using a Checker render node is good choice. Up the Repeat UV on the Checker pattern to about 20 or so. A good UV layout will be characterized by squares that are of fairly uniform size and are not distorted or stretched.
Here is Create UV's Based On Camera for the bottom of the foot. This is useful for relatively flat surfaces such as the wing and the front and back of the foot, side of face, and hands.
-
5. Open the UV Texture Editor to see how the projection has lain out the tail. Move the UV shell to the side for the time being. Do this for every shell you created so that every UV is a part of a connected projection. Pay attention to where you are creating your seams.
TIP: Shift + Right Click inside the UV Texture Editor workspace to Toggle Texture Borders. This will highlight the seam edges of the shells.
-
Once the different parts of the dragon are sectioned off, you will have to clean up the various parts that have overlapping UVs. You will find a few tools that will make this process a lot easier.
Polygons → Relax is useful to space out the UVs. Be sure to set the Edge Weights to World Space in Relax (Options). This will try to make the UV faces the same size as the 3D model. Relax will not affect the UVs along the border of the shell so you will have to tweak these by hand.
You can manually move vertices around by clicking the Move Shell button, then clicking W (Move tool) and drag selecting vertices. You can also rotate them with E. You cannot grab edges in the UV editor unfortunately
Polygons → Unfold helps to unfold overlapping UVs.
However, what you will most often use is the Tool → Smooth UV Tool. This tool combines unfold and relax as a virtual silder. Try and experiment with varying levels and combinations of unfold and relax using the Smooth UV Tool. The Tool → UV Smudge Tool is also very helpful to manually 'push' and spread UVs apart.
The Smooth UV Tool can be accessed in the toolbar above, the Polygon's Menu, the Tool Menu, or Shift+Right-Click.
The faces of the dragon model itself are different sizes, and this should be reflected in the UV space for more even texture distribution (more detail for larger faces, less detail for smaller faces).
For the various dragon parts, you will want more natural shapes like the feet and wings exampled directly below. Keep this in mind as you progress.
*If you realize you have extra faces lying around, find where they came from and sew them back on. If you cannot find where they came from, select a vertice off of the stray face and Sew UV Edges to see where it stretches to.
Ideally, you want to minimize and hide seams when texturing so you try to sew as many shells together as you can. Move adjacent shells together such as the Upper and Lower Legs/Arms, the top of the wing and the bottom of the wing.
You can flip a shell by doing Polygons → Flip. You can also click a shell and press the Flip Selected Objects in the U Direction button
- Using the Select Shortest Edge Path Tool, you can Shift-Select a visible edge. Careful to select vertices in increments or you may not get the edge you want. You can also select edge loops for the limbs on the model itself when you're connecting the upper and lower portions.
Merge the top foot + bottom foot, the top wing + bottom wing, the upper leg + lower leg, the upper arm + lower arm, and the torso + tail.
Then, go to Polygons → Sew UV Edges. If your edges are very straight, you can go to Polygons → Move and Sew UV Edges so they don't stretch out your shell. Select that shell and then Unfold/Relax it again.
- 8. Once you have lain out the UVs for each shell, we can mirror the model to create the other half. Select the dragon and the new half has the exact same UV layout as the other side, which also means that the UV shells overlap.
Click the half-model, duplicate (Ctrl-D), group that (Ctrl-G), reflect by going into Attributes Editor and entering X -1. Then, Combine and Merge Vertices down the center.
When you go back into the UV editor, it seems like nothing has changed. But if you Select Shells and move something, you'll see that the other half of the model's UVs have duplicated directly underneath.
Overlapping UV shells are fine for parts of the dragon that will be symmetrically shaded, as they reduce the work done in Photoshop and maximize UV space usage. This usually applies to parts like the feet, hands, and wings. However, you do not want the UVs to overlap for areas that need be asymmetrically shaded (for example, one hand having a tattoo), or for parts that would work better as single pieces (head, torso, etc. ) This helps to eliminate seams.
You can flip the pieces for the head, torso, and tail by doing Polygons → Flip. You can also click a shell and press the Flip Selected Objects in the U Direction button
-
Combine the two sides of the model and merge the vertices so that the model is a single piece. Note that you may have a different amount of UV shells than are shown below, and that not all of them are necessarily flipped (this is ok).
Each claw, foot, wing, and the tail might also work better as single pieces. The motivation for reducing the number of shells is that it reduces the number of seams on our model.
Combine the shells in to a reasonable set of shells. If you are overzealous in combining shells, your UV layout may suffer, so try to strike a balance. You can combine two shells by selecting the edges where they connect and doing Polygons → Move and Sew UV Edges.
- Lay out all the shells between 0 and 1 in UV space, then scale and arrange the them to maximize the amount of space used. Note that the shells do not need to fit as perfectly together as they do in the example below. You will also want to leave at least a little space between the shells so that the texture does not bleed between them.
Once you have lain out all of the shells, we will save a UV snapshot that we can use as a basis for texturing. Go to Polygons → UV Snapshot... to save a snapshot. Set Size X and Size Y to 1024, change the Image Format to PNG, and save the file.
-
Open the UV snapshot in Photoshop. Double-click the Background layer to convert it to a normal layer. Create a new layer by going to Layer → New → Layer... There are several ways to arrange your layers when painting your texture. The simplest is to paint on a layer on top of the UV map. Another way is to place the UV map above your texture layer and set it to "Screen" so that the UVs overlay the paint
If you're not comfortable with Photoshop, or have never used it, before is a link to a reference that has some tips to get you started.
How To Use Photoshop
-
Once you are done painting your texture maps, save them to the network as .png files. Be sure to disable the UV layer before you save them. Shown below are example color, bump, and specular maps. The bump and specular maps are extra credit. Bump and specular maps are grayscale. A bump map effects the way light hits the surface of the model. A white area indicates a high part on the map while a black area is low. In the specular map, white areas are shiny while black areas are not.
-
Back in Maya, create a new material and assign it to the dragon. If you want specular be sure to create a Blinn or Phong shader and not a Lambert. Map a File render node into the Color for the material. Browse for your color map in the Image Name field for the file. Since your textures will be .png Maya is going to automatically link them to the shader's transparency channel as well. To get rid of this, right click Transparency in the material's attributes and select Break Connection.
Do the same for Bump Mapping and Specular Color if you have bump and specular maps.
If you are doing a bump map, you have to separate the shells of your uv map so nothing overlaps.
Adjust your textures until you are happy with them. Unfortunately, the texture will not update automatically in Maya when you save a new copy of the texture file. To force an update, go to the file node that you mapped into the Color and click the Reload button.
- Save your dragon as [lastname]_[firstname]_dragon.ma. Open the Dragon Cove file provided for you at the beginning of the assignment.
Go to File → Import and choose your dragon file.
Open the Outliner and middle click drag your dragon model into the group labeled "PUT_DRAGON_HERE_FOR_AO". Next, select that group, and hit '3' to smooth it.
- The dragon cove should be ready for rendering! There are four camera views named LightcoveCamera, Closeup1, Closeup2, and Closeup3. Open the Render View (click this button which is located at the top middle of the screen) and make sure Render → Render All Layers is checked.
Now render each of the four camera views. You can do this by clicking each camera view in the viewport and then clicking the Render button, or from the Render View window go to Render →Render → [insert camera name here] for each camera.
Note that there will be two render passes that happen so wait until both are finished. One is for the base lighting and the other is for ambient occlusion. The ambient occlusion will create the shadows that appear when surfaces get close together.
Be sure to save each file as a .png using the naming conventions listed below when it is finished rendering.