Tuesday, June 14, 2011
Character Development Workshop: Part 1 - Modeling
The purpose of this tutorial is to provide an overview of the character development process in Maya using a very simple character design. We will use an archetypal toon-style character. To jumpstart the process and get us on the same page, I've provided a Photoshop template file to enable you to customize your creation while still holding true to the basic form.
Download the layered .psd file here.
In this file, you will find the layers as they appear in this screencap:
On the "example" layer, you'll find an ambiguous bear/cat-like design that you can use if you like. Or, hide the example layer and draw your own variation on the "draw here" layer. The shaded shape areas are your guides: simply trace around the shapes and bridge them to create a unique character. Or, hide the "template" layer and show the "Shapes" layer group. These are the vector shapes from which the template layer was originally rasterized. By selecting layers with the Move tool (turn on "Auto Select" and "Show Transform Controls" on the options bar) you can manipulate their size and placement to create a new template for toon designs of different proportions.
Tip: Copy your line art layer, create a new channel and paste it in, and then Image→Adjustments→Invert (CTRL+I) to create a negative of the line art in an alpha channel. Save the file as a 32-bit image (such as tiff or targa) and the alpha channel will read as transparency in Maya. This means your image plane will only show the line art, not the white of the page. If you want, use the version I've already done this to: generikat2.tif
Once you have something you are happy with, turn off all layers but the "draw here" layer and save it as a flat file. Bring it into your 3D modeling package as an image plane in both the front and side views. In the image plane attributes, under Placement Extras, manipulate the Center, Width and Height values until the character is centered over the vertical axis in both views and standing flat-footed on the ground plane. Copy the width/height and center Y values between the two image planes to ensure the character lines up in both views.
Create→Polygon Primitives→Cube. Move and size it to just fit within the character's largest bulk; in this case, the belly. Give it a center line in all directions. In other words, Subdivisions set to "2" in all dimensions.
Go into face mode and delete half (all faces on one side of the y axis in the front view). Select the other half and Edit→Duplicate Special→Options. Set it to "Instance" and scale negative 1 on the x. This will create a mirror across the x axis for symmetrical modeling. We will create the rest of the model with a series of extrusions; just remember from time to time to delete the inner faces that will be created anytime you extrude along the center line.
Drag-select the top faces and Edit Mesh→Extrude with 3 divisions to the top of the torso.
Tip: Window→Settings→Preferences→Selection→Polygon selection: Select faces with Center. Use this setting in order to drag-select edge faces in the orthographic views easier.
Remember to delete these inner faces and all faces along the centerline going forward. Hit "3" to smooth preview and it will remind you if you have hidden faces to delete. Hit "1" to return to unsmoothed mode.
Tip: Double-click the Move Tool icon to get at its settings. Turn on "Reflection" and "Preserve Seam" to keep you from accidentally moving vertices from the center line. In case a center vertex ever does get moved, hold "X" to grid-snap it back to the center.
Move the top of the three new verts to the edge of the neck. Move the next one down to the top of the shoulder. Move the next one down to the armpit. Remember to drag-select rather than pick select in the ortho views to get the unseen vertices behind.
Move the bottommost side verts inward toward the crotch to represent the inside of the leg. Move the next vert down to become the outside of the leg. It should now look like this:
Add a new edgeloop in the center of the belly. You can use the Edit mesh→Insert Edge Loop Tool or I suggest a shelf button with the following MEL command: PolyConvertToRingAndSplit; - this command will split any edge you currently have selected with a new edgeloop. Move the new vert to the character's silhouette.
The rest of the process will follow this basic procedure: Extrude to get new geometry, move verts to refine shape, add edge loops to further refine.
Next extrude for the arm. Select the arm face, extrude to the wrist with 4 divisions. The middle one will be the elbow.
Move the verts to position.
Uh oh. Looks like we've been neglecting the side view. Move all the verts to the nearest character silhouette. Keep the center line in the center.
Now your model should look something like this:
Next extrude the bottom leg-face down for the foot. Flatten out the verts so they lay flat on the ground plane. You might want to add a division.
Next select the front faces of the last extrusion and extrude them forward in the side view to form the foot:
Fashion all these new vertices into the foot shape by dragging them in the side view.
Next extrude the end-of-arm faces for the hand – pull it out to the end of the palm (beginning of fingers – approximately half the length of the overall hand). Give it three divisions.
Grab the faces at the end and scale them inward along Z until the middle two faces are collectively the same width as the inner and outer face. These will form the finger bases (since this is a cartoon, we will be sticking with the cartoon convention of three fingers).
Select the first face and extrude for the index finger. Add divisions=4.
Select the middle two coplanar faces and extrude the same distance for the middle finger. Divisions=4.
Then do the final finger.
Now, swing to the bottom and select and extrude from this face to make the thumb:
Switch to the front view and move verts to the thumb silhouette. It should protrude from the bottom of the palm at a 45 degree angle forward:
Now swing back to the top of the hand. Split the ring from the pinky to the index to create a center line on each digit, as shown:
And split the thumb ring as well. now all digits should have a center line running through them.
Speaking of center lines, it's time to add a center line to each half of our symmetry. Select any horizontal edge on the front of the torso and split them with an edgeloop:
Do the same for the arm:
Now you should have enough vertices you can "punch back" the corners to create a less boxy shape. The fastest way is to double-click whole edgeloops along the corners and hit Mesh>Average Vertices (make this a shelf button for repeated selecting of components and averaging to smooth the shape).
Also take a moment to thin out the arm from the top view if you haven't yet.
And tweak the foot vertices in the front and perspective view.
In the top view, double-click to select the edge rings between joints in each finger and scale them down.
Then add edgeloops on either side of the middle loop on each finger – this will be the knuckle. Since this is a cartoon, we will also stick with the convention of only having one central knuckle per finger (leaving off the smaller outer knuckle). Also add an edgeloop close the base of each finger.
Do this for the legs too.
Check you work in smooth mesh preview mode (3). It is starting to look tooney!
Now in the front view, select the top faces and extrude up for the neck. Give it a division or two.
On the next extrude, scale the faces to the width of the head in the front and side views.
Extrude once more upward with 6 divisions (remember to toggle the switch on the extrude manipulator to be extruding in worldspace so as not to stray from the centerline).
More the edge vertices to the silhouette of the character in the front and side views. Scootch the highest one inward to form the inside of the ear.
Select the corner edges and average vertices to round off the corners.
Select the backmost top face to extrude upwards for the ear.
Select the front faces of the ear and extrude by scaling uniformly inward and then extrude again and push those faces back to make a cup-shaped ear.
Use the split polygon tool to draw the following edge up the center of the face:
And then select the following faces and extrude scaling inward with three divisions to create a series of edgeloops around the eye sockets.
Do the same for the mouth, but remember to delete the inside faces and then snap the remaining verts to the centerline.
Extrude the innermost mouth faces back in Z to create the mouth sack. You can use ALT+H to isolate a selected half of the body to see what you're doing while working on the mouth sack. It can be relatively primitive, but there needs to be some geometry inside the mouth to cast shadows and hold the teeth and tongue that will be imported later.
Now you have a "base mesh" for the Generikat.
Next is the time-consuming process of messaging all the verts into place. Get a cup of coffee, stretch, and then sit down and spend an hour using soft select, average vertices, and other tools to smooth and nudge every vertex into place based on the line drawings of your image plane.
Import spheres for your nose and eyes. Use stock teeth and tongue or quickly build simple ones from cylinders and planes. When you are ready to move on to UVing and then rigging, your model should be at the resolution of the one below.