Project Overview: Tough Guy
In this tutorial I will explain some of the ZBrush techniques I used to sculpt the tough guy bust from my image's Chihuahua Tough and Love, but also explain fixing some minor issues I came across.
The proportions of this cage fighter are a bit Hulkish and exaggerated. Although ZBrush has some really cool technical solutions and exotic brushes for sculpting, for this image I used a basic approach. The sculpt process was pretty straight forward and could almost be compared to practical sculpting. Hopefully you'll find bits and pieces of my approach useful for your next project.
Before I start, please let me point out that there are many ways to create a bust like this one. This could be for many reasons; for example, when it has to fit in a certain production pipeline. Luckily this was a personal project so I used my own preferred path. However, that doesn't mean I create all my characters the same way. Okay let's get going, I hope you will enjoy the tutorial.
Base Mode and Preparation
When you start a project it helps to have the idea sketched out. Also, make sure to have a library of reference pictures that are useful for the project. Even when you are an experienced character modeler and know your human anatomy very well, it is still highly recommended to use references that add character to your character.
When sculpting a human, I prefer to use a base mesh that already has logical and simple topology. I start making polygroups right away. For this I use the Lasso Selection brush. While holding down Ctrl + Shift you can click the active brush icon in the upper-left of your screen to see all available brushes you can use with this key combination (Fig.01).
First make sure you have symmetry turned on, by hitting the X key. Now hold down Ctrl + Shift to draw-select the index finger.
Instead of isolating the selected, let go of the key combination, hold down the Alt key (Option for Mac) to invert the action, and hide the selected. Now hit Auto Groups. This will create a polygroup that's visible, but also group separate objects, in this example, the hands.
Repeat this for each finger. Every time you hide a finger, that polygroup id color gets preserved. And every time you hit Auto Groups, ZBrush assigns a new color to the groups.
When all fingers are hidden and you are left with only the hand palms, you can unhide the fingers. With Ctrl + Shift pressed, click once somewhere on an empty space on the canvas so the entire ZTool is back on screen again (Fig.02).
For now we need to concentrate on proportions and volumes. Once this is established we can take it a step further and sculpt in more details. To keep the work file organized and easy the handle, use polygroups and sculpt layers to keep control over sculpture while building up the "clay" (Fig.03).
Before posing the character, store its current shape in a layer (Fig.04).
When looking at the face for example, we all have eyes, nose, mouth and ears, so these areas can be defined in loops. Make sure the mesh is closed so whenever you have to change something in the mesh, projecting the details back will be much easier. It's important to concentrate on the overall shape.
Once everything is in the right place and you have defined the size and shape of the eyes and nose, slowly but patiently build up the face and add the next level of detail. This process takes time; don't rush it, but enjoy it (Fig.05).
When sculpting skin, you should use layers to balance the different alphas and details. Here's how I do it:
1. I start by creating a layer for the first overall skin structure pass.
2. I use the Standard brush, Spray Stroke type and an inverted Alpha56. I set my intensity really low and change the brush from ZAdd to ZSub. I hardly put any pressure on my pen while painting the surface.
3. Next I add a layer with skin direction using the same brush settings, but with an inverted Alpha58. Now I'm making strokes following the facial features.
4. These two layers can already be balanced.
5. In a new layer, I draw some strokes with the Dam Standard brush to emphasize some skin creases where skin stretches and compresses.
6. When the first layers are balanced, I use the Merge Down button. I will make an extra layer to emphasize the creases and make wrinkles from them. With the Inflate brush I lift up the skin between the creases.
7. Next I turn off the skin structure layer and smoothe the inflated areas from the outside in.
8. With the skin structure and wrinkles on top, I create a final layer for the bumps, pimples and other irregularities of the skin (Fig.06).
When we have the basic shapes and polygroups, it's time to pose the character. But before doing that, make a few screenshots and draw the muscles in. This is one of the exercises that Scott Eaton covers in his Anatomy for Artists course. It helps you to see and understand if the anatomy is in the right place, but it is also fun. I like to do this every time I get the opportunity (Fig.07).
Looking at the sketch, he needs a boxing jersey. The way I like to make one is to draw the topology onto the mesh and use the topology brush to create the geometry:
1. Duplicate the body mesh, delete subdivision levels, fill white and draw red lines
2. Smallest size, double click, hide body, delete hidden
3. Extrude, UV Master, Noise Maker, don't bake.
Most of the fine detail appears in his face and the resolution does not have to flow down to his body.
At this point we can make two separate subtools out of them. The cut will be covered by his jersey. The boxer jersey is slightly different from the original, because I don't have my saves for this part. However, the techniques I describe are the same.
I like to sketch my topology before I start drawing the new mesh. With the Standard brush selected, turn off the ZAdd and make sure RGB is turned on. From the Color menu, pick a white color and hit the FillObject button just under the RGB sliders. Next, hit the SwitchColor button and select a bright green color to sketch the topology.
White is now the alternate color that we can use to erase the green lines when we need to make changes. By pressing Alt (Windows) or Option (Mac), you paint with the alternate color (Fig.08).
When using the topology brush you need to freeze or delete the subdivision levels. Instead of working on the original ZTool, make a duplicate of the body and pick the subdivision level that still displays clear green lines. Next, delete its higher and lower levels.
Now simply trace the lines. If you need to cross a few lines, just make one sweep across them. When you go a bit beyond the lines, a little green circle appears - this mean ZBrush could make a vertex at the cross section. It doesn't really matter if your lines are not straight, because the polygons are created between the cross sections/vertices.
You can clean up the topology lines by simply hold down the Alt key (Option key for Mac) and drawing a little horseshoe somewhere on the model (Fig.09).
If you couldn't finish a topology line all the way through, then move closer to the end of that line. Your brush turns blue, which indicates that you can continue working on the topology lines. Now simply drag the line so you can create a new polygon (Fig.10).
When you have accidentally ended a line below the green circle, you have to redraw that line again. First you need to get rid of the existing lines. Hold down Alt (or Option on Mac) and draw little horseshoes that embrace the ends of the polygon lines (Fig.11).
Creating the New Mesh
When you don't want thickness, set the brush size to 1. Click somewhere on the body to create the new mesh.
Now we need to separate the jersey from the body. Since the body is a duplicate, we can hide and delete this part. With Ctrl + Shift pressed, click on the body. This will hide the jersey, but when you click the body again it will swap the two pieces. Now with the body hidden, go to the Geometry tab of the Tool palette, open Modify Topology and press Del Hidden.
The hemlines can be created in a few simple steps. Because the borders of the jersey are ring loops, you can easily select them in ZBrush:
1. With the Lasso Selection brush active, hold down Ctrl + Shift and click exactly on an edge to hide the entire ring.
2. Do the same with the other borders so only the middle part of the jersey remains. Next, open the Polygroup tab and hit GroupVisible.
3. With these polygroups we can easily select the loops of the jersey. Hold down Ctrl + Shift and click on one of the ring loops. This will hide the mid-part of the jersey.
4. Left with the loops on screen, open the Edge loop of the geometry tab. Here you'll find the new Panel Loops feature.
5. This function can be used to extrude the hemlines with the following settings:
• Loops: 1
• Double: Off
• Thickness: 0.01
• Polish: 0
• Bevel: 0
6. Now the loops are extruded, we need to crease the edges because we don't want the edges entirely smooth when subdividing the mesh (Fig.12).
We can use the CTolerance settings so ZBrush can crease the ZTool automatically. Using a value of 60 for the Crease Tolerance gives a perfect result. Because we also don't want hard edges all the way, set the CreaseLvl to 2. This means that after the second subdivision level, the crease edge doesn't apply anymore and the edges will be smooth. This technique will produce nice round edges (Fig.13).
Before continuing with sculpting the folds, shoot the jersey off to Maya using GoZ. What's really cool is that Maya recognizes the creased edges. We're not going to do anything with it, it's just an observation.
Now it's time to create UVs, so start with a Planar Projection. Then select the edges where we want to cut the UVs. Move the separate UV shells aside and make sure they are oriented correctly, which means the blue color is facing you.
To unfold the UV shells, use the Smooth UV tool. Make sure the borders are not pinned at this stage and set its Space to World. Keep in mind the straight line pattern that you want to apply on the jersey. The hemlines lay out straight so the line pattern will follow the shape. This is the UV layout I've ended up with. From here it's back to ZBrush using the GoZ MEL script (Fig.14).
Just like anything else, you start sculpting and shaping the modeling the lower subdivision levels. For this use the Move and Standard brush and set the Z Intensity to around 10-15. Build up the jersey slowly rather than carving in the folds, using a high Z Intensity value. On the higher subdivision levels, polish the folds a bit more and add a few thin creases to make the jersey a bit more interesting. Using different frequencies and variety in your folds help sell the jersey (Fig.15).
The high frequency detail is easy to make using NoiseMaker. This is usually done by using a small tileable texture; a similar approach as in ZBrush. The pattern is a small texture overlaid on your model as a bump map. Once you are satisfied, you can bake in the result. For what we need to accomplish, the resolution of the mesh has be really high and since it doesn't do anything with the silhouette of the shape, let's keep it as is.
In the NoiseMaker window you clearly see the high frequency detail mapped on the low res jersey. Also notice that the fabric pattern is nicely following the shape of the borders. This is because UV mapping is selected. Once applied to the jersey, the fabric pattern is not yet baked in. Since this project is remaining in ZBrush, leave it as it is (Fig.16).
You also notice I've created a stitch line. I prefer to make this in ZBrush by sculpting it, capturing the shape and making it tileable in Photoshop. In a few quick steps I'll explain the process:
1. Make a 512 x 512 document, pick Plane3D and hit the Make PolyMesh3D button.
2. Subdivide the ZTool without Smooth turned on (the Smt button next the Divide button). Make a stroke to see if the resolution is high enough and undo the stroke to have a clear plane again.
3. Mask the middle of the plane by using Mask Rectangle, invert the mask and push it inwards with the Move Transpose Tool (W).
4. Now sculpt a few stitches in the middle and if you want, detail them a little.
5. Once you're done, move and zoom the plane so that one stitch is in the middle and the other two are sort of two equal halves. From the Alpha menu, open the Transfer tab and hit GrabDoc. Now a 16-bit ZAlpha of the document is copied into the Alpha shelve.
6. You can already test the alpha. The easiest way to do so is to select the StitchBasic brush and replace its BrushAlpha with the new stitch alpha. From the SpotLight menu (hit the Comma key), load one of the tools to test your brush on. In my case you clearly see that the repetition is interrupted (Fig.17).
Create New Brush
Export the alpha and open it in Photoshop. Duplicate the layer and go to Filter > Offset > Other. In the window that pops up, set the vertical value to 256. This will unveil the seam that was clearly visible in ZBrush. By adding a layer mask we can paint away the seam and blend the images together. Next, flatten the document and save it.
In ZBrush we need to reopen the Alpha and get the right settings before we can save it as a new brush. To make sure we don't have the brush falloff, lower its Focal Shift to -100. Also I find it handy to set the intensity value for the brush.
In the Alpha menu, open the Modify tab. We need to get rid of the outer edges of the alpha by finding the midValue. In my case it's -100. When you have trouble finding the perfect midValue you can set a value on the RF (Radial Fade), which you can compare with Feather in Photoshop. Leave all other slider as they are.
After fine-tuning, save the brush for future projects, but first, in the document, zoom in on the stitch stroke and hit Export from the Document menu. Before saving this brush, in the Brush menu go to the SelectIcon and pick the PSD that was just exported.
While you're there, make a variation of this brush by setting the H and V Tiles to 2, in the Modify tab of the alpha. This will give you a double stitch. Make a new stroke on the canvas, zoom in, export the document, SelectIcon and Save the brush. Easy Peasy (Fig.18)!
Lazy Mouse Tip
When you make a stroke with the new stitch brush, or similar brushes, and your next stroke is perpendicular to the previous stroke, some of that angle is still stored in the lazy mouse. However, once you make a stroke in the new direction and you undo that stroke, the next time you make the stroke again you don't have that legacy anymore (Fig.19).
The Transpose tool recognizes the polygroups you've created. A cool feature of the Transpose tool is that you can use it to quickly mask all polygroups except the one you click on while holding down Ctrl (mask). Most of the time you will probably click-drag the Transpose tool while holding down the Ctrl key. The masking will happen behind your cursor and respects the topology.
You can imagine that transposing is far easier when you have clean topology, rather than working on a DynaMesh. However, DynaMesh is fantastic for concepting and designing - but that's a whole different topic.
I don't go down all the way to the lowest subdivision, as I like to use the transpose tool with a bit more resolution. Also I find the default mask blur a bit too much for this character, but you can easily change this in the Transpose tab of the Preference menu. Try changing the Mask Blur Strength from 24 to 0 (Fig.20).
The new alignment gizmo of the Transpose tool is fantastic. It will always appear where you start drawing out the Transpose tool, but sometimes you want to swap the alignment gizmo to the other side:
1. Click the outer circle on the side where the alignment gizmo is; this will move it to the other side.
2. Start placing the Transpose tool in the direction of the Humerus. The tool, however, snaps on vertices of the ZTool.
3. Next we can use the outer circles to freely move the Transpose tool. Grabbing the middle outer circle (A), move the entire tool. The other outer circles you use for changing the point position or orientation of the Transpose tool.
We want to rotate the lower arm, so hit the R key and place the camera so we can rotate the arm in the direction we want. Normally when you want to rotate the lower arm you would draw the transpose line from elbow to wrist and grab the inner circle at the wrist. However, let's leave the transpose at its current position (B).
Now when you hold down Ctrl, click the inner circle and you can now rotate the lower arm. So the Transpose tool can act as a FK or IK handle - cool huh? (Fig.21).
When rotating other parts, like the entire arm, draw out a mask with the Transpose tool and invert it. Then position the tool so you can rotate the arm in place. After transposing you always need to correct a few areas, usually where the geometry bends most. I've circled some of these areas in Fig.22.
You can take the advantage of using polygroups to hide parts so you can easily fix the problem areas (Fig.23).
Fig.24 shows the following:
1. The entire character with polygroups
2. Problem areas fixed and surface polished
3. Adding a simple shader and setting its diffuse value
4. Giving the skin some extra TLC.
Here are some turntable screenshots of the arms and, again, you have tons of advantages when you start using polygroups (Fig.25).
For Chihuahua Love, I used the Move and Nudge brush quite a lot to make the extreme facial expression. Make sure to work on the lower subdivision levels (Fig.26).
The final Chihuahua Love image, including the guy and his dog, can be seen in Fig.27.
Thanks for reading this ZBrush tutorial. I hope you found something new and/or useful to use for you own project. I will work on a textured and rendered version of this piece and hopefully soon I will share some of the tips and tricks in this process.