Advertisement

UV Mapping a High Poly World War II Willys Jeep in Modo - Part 5

by
Student iconAre you a student? Get a yearly Tuts+ subscription for $45 →
This post is part of a series called World War II Willys Jeep in Modo.
UV Mapping a High Poly World War II Willys Jeep in Modo - Part 4

In the fifth and final part of the series, we'll finish up our UVMapping. In this part we'll unwrap the wheels and pack them onto their own UV map, and go through the process of unwrapping and packing the rest of the Willys jeep.

Project Overview:
This tutorial will teach you how to unwrap a hard surface model. For that we will use the model from my previous “Modeling a High Poly World War II Willys Jeep in Modo” tutorial. We will unwrap the Willys jeep using the default Modo tools and the ETEREA UV tools which are a great addition to the Modo toolset.

For most people unwrapping is a tedious task. When you grasp the idea and learn the tools the process will become easy and comfortable. Modo helps in making the process smooth and painless. It gives you only a few tools, but they can easily get the job done. I hope that after you complete this tutorial you’ll understand the UVing process and will feel more comfortable unwrapping.


1. Unwrapping The Wheel

Step 1

The final piece we need to unwrap is the wheel. I won't be unwrapping the bolts on the rim (which I talked about in the previous part.) I will only be unwrapping one wheel. The rest will be instances of this one. If you need more variation, just use the same geometry with the same UVs, but create two different textures.

Willy_UVMapping_PT5_R__01

Step 2

Add a UV Map called wheel just as we did before. As I said our wheel will use a separate texture.

Willy_UVMapping_PT5_R__02

Step 3

Let's start by isolating the rim (we'll tackle the tire later.) The rim consists of three parts, below you can see some messy, default UVs. That's because I renamed the default UV Map

Willy_UVMapping_PT5_R__03

Step 4

Let's start by unwrapping the back of the rim. So just use the Unwrap Tool for these specific polygons.

Willy_UVMapping_PT5_R__04

Step 5

For the polygons running around the outside of the rim, you can use the UV Projection Tool with Cylindrical projection. The tool filled the entire 0-1 space, but we know the proportions of our flattened cylinder shouldn't be square. So let's apply the checker pattern to our wheel to see the distortion.

Willy_UVMapping_PT5_R__05

Step 6

The Senecas script adds a new bitmap on the top of the shader stack. In the first part of the series, I explained that every bitmap has to be applied to a specific UV Map. If we now change checker patterns, the UV Map on the wheel it won't show up on our body UV Map.

To fix it, I applied a material to the wheel object (by pressing M) and I duplicated the checker pattern into my material. The checker pattern outside the material is applied to body and the one inside the material, to the wheel. Be sure your maps and materials are below the Base Shader in the stack.

Willy_UVMapping_PT5_R__06

Step 7

Now you can easily see the distortion on the wheel. Be sure to relax the polygons we unwrapped in Step 5. Now let's unwrap the rest of the rim. Looking at the main shapes of the rim (not looking at those two parts in the middle), we can see a cylindrical border and round cap in the middle. Let's separate those two, by selecting the loop as shown in the image below and using the Unwrap Tool. We get a nicely unwrapped cap, but not as great UVs for the cylinder.

Willy_UVMapping_PT5_R__07

Step 8

Double-click those polygons in UV window and hide the rest of the geometry.

Willy_UVMapping_PT5_R__08

Step 9

Since we isolated them, we don't need to select the loops we selected earlier. So just select one loop (shown below), to cut this piece. When you run the Unwrap Tool with those edges selected, you'll get nice UVs.

Willy_UVMapping_PT5_R__09

Step 10

Deselect the edges. Below you can see I tried relaxing this piece, but unfortunately not much changed. That's because our cylinder changes in diameter in the 3D view. It's close to a cylinder shape, but it isn't a perfect cylinder.

Willy_UVMapping_PT5_R__10

Step 11

We can get a better unwrap by using the Senecas scripts to straighten the edges, like we've done many times before.

Willy_UVMapping_PT5_R__11

Step 12

I also straightened the horizontal edges. The distortion this caused isn't really noticeable, so there was no reason to leave it as it was.

Willy_UVMapping_PT5_R__12

Step 13

Now let's unhide the rest of the rim, and unwrap the two remaining pieces.

Willy_UVMapping_PT5_R__13

Step 14

But before we do that, let's pack those shells using Pack UVs. Also Relax what needs relaxing (don't relax the parts you already modified by hand, for example if you already straightened the edges.)

Willy_UVMapping_PT5_R__14

Step 15

Now isolate the middle parts of the rim. The Polygons I have selected here (highlighted below) won't be seen, so let's Delete those.

Willy_UVMapping_PT5_R__15

Step 16

Start by breaking one of the parts into main shapes. Again, these consist of a cap and a cylindrical surface.

Willy_UVMapping_PT5_R__16

Step 17

Relax the polygons running around this piece. And as you can see, we're done with one of the two.

Willy_UVMapping_PT5_R__17

Step 18

The second part is harder to unfold, since it's beveled. It's always hard to unwrap parts like this without creating an easily visible seam. This part is small though, so it shouldn't be much of a problem. Using the Unwrap Tool, break the cap into it's own shell.

Willy_UVMapping_PT5_R__18

Step 19

On the rest of the polygons, use the UV Projection Tool with Cylindrical as the projection type.

Willy_UVMapping_PT5_R__19

Step 20

Now let's Relax this shell. As you can see, the result is not that bad.

Willy_UVMapping_PT5_R__20

Step 21

Rotate this shell so it's mostly horizontal, and start straightening those edges.

Willy_UVMapping_PT5_R__21

Step 22

Try to match the scale of the both shells. Below you can see how it should look. Looks solid.

Willy_UVMapping_PT5_R__22

Step 23

Unhide the rest of the polygons. If any shell is way bigger than the rest. Scale it down by hand. If they are mostly the same scale, use Pack UVs to match the scale.

Willy_UVMapping_PT5_R__23

Step 24

Now let's tackle the tire and we'll be done unwrapping. The tire is a repeating pattern. Since we created it by duplicating and bending, it is good idea to unwrap it before the bend, but we don't have this luxury right now. First of all, I won't unwrap whole tire, just one quarter. If you really need a unique texture running around the tire, you can unwrap a quarter of the tire and then move the overlapping UVs and stitch them.

Willy_UVMapping_PT5_R__24

Step 25

The inner polygons will be unwrapped as a one whole. Why? Because that's usually where the tire's brand name goes. And it's usually not repeating, so you can't overlap the UVs.

Willy_UVMapping_PT5_R__25

Step 26

Change your view to the one perpendicular to those polygons, and use Project from View to unwrap the polygons (you can also Relax them a bit.)

Willy_UVMapping_PT5_R__26

Step 27

If you want to have the inner side show the same as the outer side, you can leave them overlapped. But I moved one of them up.

Willy_UVMapping_PT5_R__27

Step 28

Hide what we already UV'd, and let's Delete three quarters of the tire. Select edges as shown in the following image. You can use the Modeling palette by pressing F2, and under the Edges tab you'll find Split. Use it to separate these polygons from the rest, then Double-click on the three quarter portion of the tire, and Delete it.

Willy_UVMapping_PT5_R__28

Step 29

You should now have something like you see in the image below. It's not an easy shape to unwrap, so we will have many UV shells. You could also create the tire with less ribs, just to reduce the UV shell count.

Willy_UVMapping_PT5_R__29

Step 30

Like many times before, I used Select Sharp to select all the hard edges.

Willy_UVMapping_PT5_R__30

Step 31

If you now use the Unwrap Tool now, you'll get lots of separate shells. You can use Initial Projection, Pinning Axis and Projection Axis in the Unwrap Tool to improve your unwrap a bit. After some messing around, this is the best I could get.

Willy_UVMapping_PT5_R__31

Step 32

Everything except the biggest shell is unwrapped as we would expect. To improve this bended shell, let's use the UV Projection Tool with Cylindrical as a projection type. Change the projection to Manual and in the side view, just move the gizmo to a place where the tire's center would be. But as you can see, my UVs are squashed.

Willy_UVMapping_PT5_R__32

Step 33

Scale this shell horizontally, until the pattern in the 3D view looks good.

Willy_UVMapping_PT5_R__33

Step 34

Unfortunately, we do get some stretching on the side polygons of this shell.

Willy_UVMapping_PT5_R__34

Step 35

To fix this, select the vertices shown in the following image (be sure to select both sides.)

Willy_UVMapping_PT5_R__35

Step 36

Scale them vertically in the UV window. The pattern in the 3D view will slowly improve. Stop when it looks good.

Willy_UVMapping_PT5_R__36

Step 37

Now deselect the verts closest to the middle of the shell, and once again, Scale vertically in the UV window. The next loop of polygons will get more space in the UVs, improving the pattern's look.

Willy_UVMapping_PT5_R__37

Step 38

Do the same for the remaining polygons. Below you can see what it should look after this operation. Seems OK.

Willy_UVMapping_PT5_R__38

Step 39

Unhide the rest of the polygons, and move the banana shapes away. I won't stitch these anywhere, so unfortunately we will be stuck with all these small shapes. We can reduce some of the shell count though.

Willy_UVMapping_PT5_R__39

Step 40

Select everything that's left in the 0-1 space. You can see that these are those small shells on the inner edge of tire.

Willy_UVMapping_PT5_R__40

Step 41

After selected all of those polygons, run the Unwrap Tool. It will stitch the shells together, giving those planes nice UVs.

Willy_UVMapping_PT5_R__41

Step 42

Using the Senecas script, pack those small UV islands. Also be sure to Scale them so they're rather uniform.

Willy_UVMapping_PT5_R__42

2. Packing The Wheel UVs

Step 1

First, unhide the rest of the geometry so we're able to pack them.

Willy_UVMapping_PT5_R__43

Step 2

Use Pack UVs to scale the shells to the same texel density (as you can see below, the difference in scale, caused the rim to blow out.) Caring for similar scale will save you the trouble of cleaning this mess.)

Willy_UVMapping_PT5_R__44

Step 3

OK let's pack those UVs. First of all, you can now Scale all the shells up or down as needed. You want them to be as big as possible, but still be able to fit them all into the 0-1 space. Also be sure you are scaling all of them. If you don't do it, you will mess up the texel density between shells. First, put the biggest shells into the 0-1 space.

Willy_UVMapping_PT5_R__45

Step 4

Now try to fill the empty space with the smaller ones. I packed the tire thread in the top right corner. Try to keep the shells which are connected in the 3D view, close to each other on the UV map.

Willy_UVMapping_PT5_R__46

Step 5

I filled the rest of the space with our bananas. Be sure to leave some space between shells, and also a few pixels in between the shells and the 0-1 border.

Willy_UVMapping_PT5_R__47

3. Packing body UVs

Step 1

Let's jump back to our body UV map. I uniquely unwrapped all of the seats earlier. The best thing to do before you unwrap, is to delete every part that will have overlapping UVs. Leave only one copy and then duplicate it after you're done with unwrapping.

Willy_UVMapping_PT5_R__48

Step 2

Select all the meshes belonging to the Body UV map in Item mode. Now you can edit the contents of multiple mesh objects. Now use Pack UVs to average the scale of every UV shell. I always said that you should scale manually before. That's because if your shells are drastically different in scale, they could average into huge shells that overlap and create a hard to untangle mess.

Willy_UVMapping_PT5_R__49

Step 3

Once again, start packing by placing the biggest shells first. As you can see, not all of the shells are placed in the 0-1 are big. I just put the whole chassis in there and tried to keep the shells close to each other. Again, I fill the holes with geometry that is close to those holes in the 3D view. For now I don't know if everything will fit into the 0-1 space, bit I just want to get a good UV placement without wasting space. Later I can scale everything down, and modify my layout.

Packing is almost never done in one go. But here I will do it all in one go, since it can sometimes take a really long time if you want a perfect layout.

Willy_UVMapping_PT5_R__50

Step 4

Continue by placing the hood shells next. I put them in the corner where I know it will utilize the space as best as it can (it's almost a rectangular shape.)

Willy_UVMapping_PT5_R__51

Step 5

To put the seat shells into the 0-1 space, I first put them in order between each other. Below you can see how I've arranged them.

Willy_UVMapping_PT5_R__52

Step 6

I wanted to put these on the top of the 0-1 space, but as you can see, I can't fit them (most of them fit, but the rest don't.) I like to move whole selections like this. Deselect shells that match the space I have, and than move the rest of the selection around, until I find a good place for them.

Willy_UVMapping_PT5_R__53

Step 7

After I rearranged shells a bit more, I was able to fit all the seats UVs close to each other.

Willy_UVMapping_PT5_R__54

Step 8

The next big piece would be the frame. I don't want to pack these weird shapes though. The seams on the frame shouldn't be noticeable, so select the vertical pieces connecting the frame parts together and just move them, with Tear Off turned on.

Willy_UVMapping_PT5_R__55

Step 9

I aligned those shells parallel to each other, and tried to keep each part's corresponding shells together.

Willy_UVMapping_PT5_R__56

Step 10

Now let's place those shells into the 0-1 space. If you aligned them outside the 0-1 into one big rectangular shape, you can treat them as such when packing.

Willy_UVMapping_PT5_R__57

Step 11

Here I filled in some areas with the rest of the frame geometry. I prefer to waste a bit of space and be able to have corresponding parts close to each other. The comfort while texturing is more important to me, than using 100% of the UV space.

Willy_UVMapping_PT5_R__58

Step 12

I moved the container under the chassis into the most convenient place. Be sure it doesn't overlap, and that you leave some space around it.

Willy_UVMapping_PT5_R__59

Step 13

Next, the front grill. I saved some space here, by placing one shell in the hole where lights are in the 3D view.

Willy_UVMapping_PT5_R__60

Step 14

The mudguards are really badly shaped to pack them efficiently. So I tried to use the space around the floor of the chassis.

Willy_UVMapping_PT5_R__61

Step 15

The biggest parts left to pack now are the windows. I would like to fill the space in as shown below, but unfortunately we'll need to rearrange some of our previously packed shells (happens often during packing.)

Willy_UVMapping_PT5_R__62

Step 16

Below you can see how I rearranged the frame shells, to be able to fit in the window shells.

Willy_UVMapping_PT5_R__63

Step 17

We've still got four shells which would really take up a lot of space, unless we break them down into easier to manage chunks.

Willy_UVMapping_PT5_R__64

Step 18

If you can't remove the seams in your texture, you may want to try packing everything without breaking up the shapes. But I broke them up as you can see in the image below. Into long, straight pieces.

Willy_UVMapping_PT5_R__65

Step 19

Using the Senecas scripts, I arranged the shells in a nice manner.

Willy_UVMapping_PT5_R__66

Step 20

Now I can use the space inside the window shell and around it.

Willy_UVMapping_PT5_R__67

Step 21

Below you can see that the lower parts of the window were placed inside the main body shell. This still makes sense, because in the 3D view, they are placed close to the back of the hood. So they shouldn't get lost in those UVs.

Willy_UVMapping_PT5_R__68

Step 22

We are left with a few details to pack. First, the handles. I've got two handle types, a bent one and a straight one. Pack them close together into some free space.

Willy_UVMapping_PT5_R__69

Step 23

Now find some space for the the dials. Actually these are one of these parts you may want to scale up. They will have a larger texel density, which means they will use more pixels than any other surface, but you may want to have a bit more detail on those. I didn't scale them up, but don't be afraid to do that on more important parts.

Willy_UVMapping_PT5_R__70

Step 24

Finally pack the pedals, the gear shift stick and the reflector.

Willy_UVMapping_PT5_R__71

Step 25

The steering wheel shells, I placed inside the chassis shell and tried to give them a bit more breathing room. Be sure long parts are aligned horizontally/vertically and not rotated slightly.

Willy_UVMapping_PT5_R__72

Step 26

Below you can see my final UV layout. It could be better. It can always be better. I left some space around the dials. Incase I ever want to scale them up, and there's room if my texture starts bleeding from one shell to another. I can then move them and give some more space around them.

Willy_UVMapping_PT5_R__73

Step 27

Below you can see the UV layout with Overlapping turned on. You can turn it through the Senecas palette or through the options in the top left corner of the UV window. As you can see, every red piece is one that will share texture with the other instances. Of course I duplicated geometry. If you still haven't done that, you won't have those red shells.

Willy_UVMapping_PT5_R__74

Conclusion

We reached the end. You have now fully unwrapped the Willys jeep. You can now texture it by using two texture sheets. I hope you learned something from this tutorial :).

Willy_UVMapping_PT5_R_jeep

Thank you for reading this tutorial. If you have any questions, please leave a comment or write me an email.


Advertisement