How to Stylize and Model 'Toon Humans - Chapter 2: Posing and Texturing
The previous chapter was dedicated to modeling the character. In this chapter we will handle the UV mapping as well as the creation of the textures. We will also model the character's belt in 3ds Max, UV map and texture it.
Make sure that GoZ is configured in ZBrush 4 to communicate with 3ds Max, because we will be taking advantage of this new feature to exchange information between the two applications.
UV Master 1
ZBrush has a very simple tool to create UVs - the UV Master. It's a free plugin that you can download from Pixologic.
In this chapter we will be using the Material "SkinShade4". It is a white material which is great for Polypainting because it doesn't affect the painted color and it also shows specular highlights which help to read the form. Select it from the Material menu to have it applied (Fig.01).
- Select the upper body subtool.
- From the Zplugin menu, choose UV Master.
- Click on Work on Clone. UV Master will
create a new tool with the upper body at the lowest subdivision level. The new tool starts by the prefix "CL_".
UV Master 2
We will use a polygroup selection to define the UV islands.
- Create the polygroups as in Fig.02, separating them as head, neck, trunk, left arm and right arm.
- In the UV Master menu choose Enable Control Painting.
By clicking the Protect or Attract buttons under Enable Control Painting you will be able to paint the surface in red, to define the areas that should not have seams, and blue to attract those seams. The UV Master does not allow you to specify exactly where you want the seams. If you need that kind of control you should use an external tool to create the UVs.
- Choose the Protect button and paint the face, chest and the outside of the arms.
- Choose Attract and paint the inside of the arms, the back and the back of the head.
UV Master 3
- In the UV Master, disable Symmetry and enable Polygroups.
- Click Unwrap. ZBrush will generate the UVs (Fig.03).
- To see the flattened UVs press Flatten. Choose Unflatten to go back.
- To check the seams press Check Seams and they will be displayed in orange.
For a finer adjustment of the UVs we can export this model to 3ds Max.
- From the Tool menu, press the GoZ button (Make sure the selected application is 3ds Max. You can change it by pressing the R button in front of the GoZ button).
- 3ds Max will be automatically launched with the model in the scene.
- Select the upper body mesh.
- Choose Unwrap UVW from the modifiers list.
- In the Unwrap UVW press Edit.
You can now modify the UVs in an easier way than inside ZBrush (Fig.04). I wanted to give more UV space to the head than the rest of the body as this is a very important area of the character. To do this:
- In the Edit UVWs window enable Select Element under Selection Modes. This way by selecting a single vertex/edge/face you will select the whole UV island.
- Select the head UVs and scale them up to about the double of the original size.
- Select, move and rotate all the islands so that everything fits inside the UVs limit.
- When finished go to the top bar and in the GoZ menu choose GoZBrush.
UV Master 4
ZBrush will show the updated mesh. If you use the Flatten option in the UV Master plugin you will notice that the UVs are updated.
We are still working on the Cloned tool, so we will have to copy the UVs to the original model.
- In the UV Master menu click on Copy UVs.
- Select the original tool and make sure that the upper body subtool is selected.
- In the UV Master menu click on Paste UVs.
In Fig.05 I have applied a checkered image that comes with the UV Master plugin as a texture map, to verify the UVs.
UV Master 5
We will repeat the procedure (minus exporting to 3ds Max) to texture the trousers and one boot.
- Select the trousers subtool.
- In UV Master choose Work on Clone
- Choose Enable Control Painting and paint the attraction areas on the back of the trousers and interior of the legs. Protect the remaining areas, as in Fig.06.
- In the UV Master disable Symmetry and Unwrap. Copy the UVs from the clone and Paste the UVs to the original subtool.
UV Master 6
- Select the right boot
- In UV Master choose Work on Clone.
- Disable Symmetry and enable the polygroups, in order to split the boot in its different parts in the UV coordinates.
- Unwrap. Copy UVs from the clone and paste them to the original subtool (Fig.07).
We will not map the other boot as we will clone the final object in 3ds Max to create the left boot.
We will now initiate the painting of the skin. As we will use polypaint, the color information is stored in the vertexes of the geometry. This means that the denser the mesh, the higher the detail of the polypaint. I have increased the total subdivisions to 7 (which resulted in 6.6 million polygons, in my case). To achieve a realistic skin we will paint the skin in layers, using a noisy airbrush to achieve the variation of color that we are used to seeing in the skin.
- Select the upper body subtool.
- Choose the Standard brush.
- In the top menu disable the Zadd button and enable the RGB button (Fig.08).
- Choose the Spray stroke and in the Stroke menu change the Color slider to 0.1, so that there is less color variation.
- Choose the Alpha "Alpha07".
- In the color picker, choose a red color.
- In the Color menu choose FillObject. The object is now completely red.
We will be painting what is happening under the skin, so it is important to represent the areas with cool and warm colors as well as the veins that can be seen through the skin.
- Choose different tones of yellow and orange and paint the surface randomly to create a noisy base on top of the red color.
- Change the brush size to achieve differentsizes of noise.
- After creating this base, choose a blueish gray and, using the same brush, paint the areas where hair grows from with more density: the scalp and the beard.
- Also paint under the eyes with a cold color.
- Change the color to a reddish pink and paint the ears, inside of the eyes, the cheeks, the lips and the tips of the fingers. These are the typical red areas (Fig.09).
- Change the brush Stroke back to Dots and disable the Alpha.
- Choose a blueish gray and paint the veins underneath the skin. Don't be too shy with this, make them clearly visible. Remember that we are painting what is going on underneath the skin.
Let's convert this polypaint to a texture.
- In the Tool menu, under UVMap, increase the UV Map Size to 4096.
- In the Tool menu, under Texture Map, click on New from Polypaint. A texture will be generated.
- Press Clone Txtr. The texture will be sent to the Texture menu.
- In the Texture menu, press Export and save the image as "body_subdermal.PSD".
- Save the Tool as you might want get back to it later.
We will paint the outer skin on top of the subdermal polypaint we have made. This will make the skin look a lot more natural as the information below the skin will be seen (Fig.10).
- With the Standard brush in Spray mode and using Alpha 07 as before, choose a light salmon color.
- Lower the RGB Intensity to about 24, so that we will paint with a low opacity.
- Paint on top of the existing colors using little pressure and cover the previous paint unevenly so that you can still see the veins below.
- Change the brush Stroke back to Dots and disable the Alpha.
- Choose a white color and paint the nails leaving some of the color underneath to make it look more natural.
Convert this polypaint to a texture as before and save the image as "body_epidermal.PSD".
Exporting maps 1
We will now generate cavity and occlusion textures to help us in the creation of the final textures. I will exemplify the procedure for the upper body.
- In order for this to be clear go to the Polypaint menu in the Tool menu and disable the Colorize button. This will hide the Polypaint.
- Go to the Masking menu in the Tool menu and click on Mask by Cavity.
- Convert the masking to a texture by going to the Texture Map menu and clicking New from Masking (Fig.11).
- Press Clone Txtr and, as before, save this texture from the Texture menu with the name "body_cavity.PSD".
For the occlusion texture:
- Go to the Masking menu in the Tool menu.
- Increase the AO ScanDist to 0.5
- Click on Mask Ambient Occlusion. If the procedure takes too long, you can lower the subdivisions of the geometry to make it faster, but the map will be less detailed (Fig.12).
- Convert the masking to a texture by going to the Texture Map menu and clicking New from Masking.
- Press Clone Txtr and, as before, save this texture from the Texture menu with the name "body_occlusion.PSD".
Exporting maps 2
- Select the trousers and, repeating the procedure described before, create occlusion and cavity textures. Save them as "trousers_occlusion.PSD" and "trousers_cavity.PSD".
- For the boots create only the cavity texture and save it as "boots_cavity.PSD" (Fig.13).
In order to export the model to 3ds Max, we will first reduce the polygon count of the model. For that we will use the Decimation Master tool (also available for download at Pixologic) which will reduce the number of faces by transforming the surface into triangles while trying to keep the detailed areas (Fig.14). Always save before decimating.
- From the Zplugin menu choose Decimation Master.
- Enable the Keep UVs option, so that the UV coordinates are not destroyed in the process.
- Choose Pre-process All. This will prepare the mesh for decimation, so that later you can define the reduction percentage. This will take some time.
- When this process is complete, reduce the % of decimation to about 5%. This will mean that your model will have 5% of the total number of faces it had initially.
- Choose Decimate All. All the subtools will be optimized. If you press the PolyF button (Shift + F) you can see the new mesh made of triangles.
- To export the model to 3ds Max press the All button in front of the GoZ button. 3ds Max will open with the full model.
Model the eye
In 3ds Max, model a simple eye as in the kangaroo tutorial.
- Create a primitive sphere and place it roughly at the eye socket.
- Add an Edit Poly modifier and pick the polygons that represent the pupil. You can do this quickly by restricting the polygon selection to be By Angle with a value of 3,0 and clicking one of the pupil polygons.
- Move the selected polygons inwards to create a recessed iris.
- Pick the Extrude Dialog box and set the value to extrude the pupil inwards.
- Apply a UVW Map modifier as Spherical. Change the UV alignment to X, and if necessary rotate the gizmo so that the map seam is on the opposite side of the pupil.
- Place the eye on the character's face (Fig.15).
To create the cornea:
- Clone the eye object as a copy and name it "eye_cornea".
- Delete the Edit Poly and UVW Map modifiers from the stack.
- Change the sphere radius to be slightly bigger than the eye.
- You can press Alt + X to make the object transparent on the viewport, making it easier to see where the character is looking at.
Model the belt 1
To model the belt:
- Start by creating a line around the waist with several vertexes.
- Make sure the line goes around the full waist and leave a looser bit at the end to simulate the tip of the belt. Also deform the part of the belt where the buckle will be; you can adjust it to perfection later.
- Apply a Sweep modifier with the built-in section set it to Bar.
- Set the interpolation steps to 1.
- Adjust the length and width to create a tall rectangle. In my case it had 0.047 m by 0.005 m.
- Set Corner Radius to 0.001m.
- Change the Pivot Alignment to the middle left position.
- Make sure that Gen Mapping Coords is ON (Fig.16).
Model the belt 2
To model the buckle (Fig.17):
- From the Extended primitives, create the C-Ext primitive to create a C shaped object.
- Apply an Edit Poly modifier. Select the corner edges and use Chamfer with three steps. Adjust the vertexes to create some nice curves at the corners. Create someedge loops on the three sides of the buckle to allow it to bend.
- Select the edges of the buckle and apply a small chamfer to catch highlights.
- Apply a Bend modifier to curve the buckle.
- Apply a TurboSmooth modifier to subdivide and smooth the buckle.
Model the belt 3
To create the buckle pins:
- Create a line as in Fig.18.
- Use a Sweep modifier with a Bar section. Use the Corner radius value to chamfer the edges.
- With an Edit Poly chamfer the edge at the tip of the pin.
- Apply a TurboSmooth modifier to round it.
- Clone it to create the second pin.
To create the belt loop:
- Create a rectangle shape with some corner radius to make the corners round.
- Apply an Edit Spline modifier to make the loop rounder at the front.
- Apply a Sweep modifier with a Bar section.
To create the belt tip:
- Create a box with three height segments.
- With Edit Poly create two edge loops in the middle section and one edge loop at the top and bottom sections.
- Move the vertexes to create an arrow shaped tip, as in the image.
- Chamfer the edges.
- Apply a TurboSmooth modifier to make it rounder.
Model the Trouser Straps
- Create a line representing the path of one trouser straps.
- Apply a Sweep modifier with a bar Section and a small chamfer.
- Make sure Gen Mapping Coords is ON.
- Apply a Smooth modifier with a Threshold of about 50 to generate the smoothing groups on the strap.
- Copy and position the straps around the waist. In Fig.19 you can see how I have placed mine.
As you might have noticed, I didn't create any holes on the belt. We will do that in the texture. However, without any references it would be quite difficult to know where to place the holes with precision, as the buckle pins must go through the holes (Fig.20).
Let's do the following:
- Select the belt.
- Apply an Edit Poly and create some edges where the holes should be.
- Apply an Unwrap UVW modifier.
- Press Edit and in the Edit UVWs window click on the Options button on the lower right corner.
- Turn on Use Custom Bitmap Size and set the width to 150 and the height to 2048. This way the UVs are now proportional on screen.
- Click on the Tools menu and choose Render UVW Template.
- In the Render UVs window set the Width to 300 and the Height to 4096.
- Press the Render UV Template button.
- Save it as "beltUVtemplate.jpg"
Now we have a guide to create the texture in Photoshop with the exact location of the holes.
For the belt texture, I have found a nice photo at CGTextures with several leather straps (Fig.21).
- Open Photoshop.
- Load the "beltUVtemplate.jpg".
- Rotate the image 90 degrees clockwise to make it easier to work with. Invert the colors and desaturate it.
- Double click on the background layer and name it "UVTemplate". Change the layer blending mode to Multiply.
- From the reference image I have selected one of the straps with the Marquee tool (press M) and pasted it underneath the UVTemplate layer.
- Press Ctrl + T and scale the strap to fit the template.
- With the Clone Stamp tool, erase the existing holes on the strap.
- Copy the strap several times to fill the entire length of the belt and erase with a soft brush between the pasted samples to blend them together.
- For the holes, go to the original photo, select one hole and paste it on top of the belt texture. With the eraser, blend the hole with the texture underneath. Make sure to place the holes at the edge markings we so that the pins go through the holes.
- Hide the UVTemplate layer. Rotate the image 90 degrees counterclockwise to go back to the original position and save the texture as "belt_diffuse.PSD".
In Photoshop we will add some more detail to the epidermal texture (Fig.22).
- Open "body_epidermal.PSD" in Photoshop.
- Create a new layer on top of this one by
pasting the "body_occlusion.PSD" image and setting the blending mode to Multiply. Adjust the Fill value to 13% to make the darkening effect subtle.
- Create another layer by pasting the "body_cavity.PSD". Set this layer to Overlay with a Fill value of 37%. The cavity map enhances the edges of the model which is perfect for the chiseled look I am after. If you wish to accentuate parts of the cavity map, just use an eraser with a soft brush to tone down some areas.
- To create some illusion of detail, create a new layer and fill it with a brown color.
- Choose Filter > Noise > Add Noise.
- Change the Noise amount to 45%, set the distribution to Gaussian and turn Monochromatic on.
- Set the layer to Overlay with a Fill value of 12%, this will add some subtle noise to the skin.
- Save it as "body_epidermal.PSD".
Trousers texture 1
For the texture of the trousers I have also found a nice sample of jeans at CGTextures. It is a clean sample without any stitches, so the only thing I had to do was to make it tileable (Fig.23).
To create a tileable texture, use the Offset filter (Filter > Other > Offset) to place the border pixels at the center of the image and then use the Clone Stamp tool to blend the edges.
- Open the "trousers_occlusion.PSD" image you have created.
- Double click it and name it "Occlusion". Set the layer blending mode to Multiply.
- Copy the tileable tissue sample and paste it underneath the occlusion layer.
- Press Ctrl + T to rotate and scale the tissue in order to align it with one of the legs. Make sure that the weave and size of the cloth make sense regarding the direction of the leg.
- Erase the tissue texture at the fly area so that it doesn't overlap with the texture of the other leg.
- Repeat the procedure for the other leg and erase the overlapping texture.
Trousers texture 2
- Open the "trousers_cavity.PSD" image, copy it and paste it on top of all the existing layers (Fig.24).
- Change the blending mode to Overlay.
- You will notice that the stitches detail is fine, as well as the pockets. However the wrinkles are too strong. So, with a soft eraser brush, erase/tone down the stronger wrinkles.
To increase realism let's roughen the tissue at the front and back of the legs (Fig.25).
- Create a new layer below the "Occlusion" layer.
- Set the new layer to Screen mode.
- Pick a noisy brush and a very light blue color.
- Paint the front and back of the legs to lighten the tissue color.
I have searched online for images of jeans and pasted a couple of straps within the image. Later we will maps these to the trouser's straps.
- Save as "trousers_diffuse.PSD".
Boots texture 1
To create the boots texture I have first downloaded a leather sample from CGTextures.
- Open the "boots_cavity.PSD" image in Photoshop.
- Double click it and name it "Cavity". Set its blending mode to Overlay (Fig.26).
- Copy the leather sample and paste it below the cavity layer.
- Move the sample to cover the upper part of the boot.
I have adjusted the color of the leather to a darker and more saturated tone by using Brightness/Contrast and Hue/Saturation adjustment layers.
For the tip of the boot, I have used the same leather sample with a slight color adjustment to desaturate it (Fig.27). The decorations of the tip were erased to reveal the texture below.
For the sole, I used the same texture again but with a color adjustment to make it darker.
For the sides of the sole, I have once again found a nice texture at CGTextures. It is a brown cardboard full of scratches which has a leathery look.
- Place the image below the cavity layer and transform it to match the elements.
- Delete the remaining texture, in order for it not to cover the other boot elements.
Boots texture 2
To add some scratches and worn marks to the boots, we will use the cardboard texture (Fig.28).
- Select parts of the cardboard with nice scratches.
- Copy and paste them on the boot texture.
- Desaturate the scratches image and change the blending mode to overlay.
- If necessary use the eraser to blend the scratches with the base texture.
- Create a new layer with Multiply blending mode.
- Select a noisy brush and pick a mid brown color.
- Paint around the boot in the areas where the sole meets the leather.
- Save as "boots_diffuse.PSD".
The procedure to create the eye texture is the same as in the kangaroo tutorial.
- Render the UV coordinates at 1024x512 inside the UVW Unwrap modifier, as we did for the belt.
- Go to http://freetextures.3dtotal.com/ and in the Human/Face section download the image "Face-6025.jpg".
- Open the image with the UV coordinates of the eye, invert and desaturate it and set the layer to multiply (Fig.29).
- Paste the reference photo in a layer below the UVs and match the perimeter of the iris with the UV coordinates.
- Select the left side of the white of the eye in the photo and mirror it to the right side.
- Paint the remaining area leaving the center whiter and the surrounding area in pink tones.
- Hide the UV coordinates and save as "eye_diffuse.PSD".
We have created all of the character's color textures. In the following and final chapter we will create the materials and light the scene. Some more textures will be created for glossiness and specularity as those have to be fine tuned with the light. I hope you have enjoyed the tutorial so far. See you in the next chapter (Fig.30).