Features - Programming

Character
Modeling
Case Study: Jack Nicholas 5
 
by Stefan
Henry-Biskup

Gamasutra
November 13, 1998
Vol. 2, Issue 45


Introduction

Case Study:
Jack Nichoolas 5


What's A character sheet?

Deconstructing the body

Creating the Pelvis

The Spine

The Shoulders

The Elbows

The Knee

As Tools Evolve, Concepts Remain Valid

When Accolade began working with Eclipse Entertainment to create Jack Nicholas 5, we encountered some major problems with the golfer's animated appearance. The model was attached to an animated skeleton, which was driven by motion capture data. However, when the model animated, problems cropped up. The golfer's posture was very stiff and unnatural, the shoulders were ballooned out, and the thighs looked too long (Figure 1). A great deal of time was spent tweaking the vertex attachments, applying bulge angles, and editing link parameters in an effort to fix the model's animated appearance. We tried to improve the character's posture by adjusting the bones of the back, but that threw off the rest of the motion, causing the golfer's club go into the ground during a swing (the hierarchy effect). Most of our fixes related to the attachment of the mesh to the skeleton - essentially changes to the surface portions of the model. But the source of the problems was actually inside, in the skeleton itself.

Figure 1
Figure 1. This golfer's thighs are too long and his shoulders bulge.



The problem lay in the structure of the skeleton and its positioning within the mesh, not in the vertex assignments. The joints of the hips and lower back were coplanar in the z-axis, forming a flat horizontal line (Figure 2). As such, the lower back rotation occurred in the hip area, creating a stiff posture that lacked the natural arc of the spine. This configuration placed the skeleton's root too low in the mesh, and because the rest of the joints were children of this root, the problem was propagated on to them.

Figure 2
Figure 2. Coplanar joints in the hip area causes unnatural movement.



The low placement of the root turned out to be the cause of our knee and shoulder problems (Figure 3), and in fact affected all joints to some degree. To solve it, we reprocessed the motion capture data for a more appropriate skeleton, and then modified the model with respect to the new skeleton (Figures 4 and 5). With a new skeleton and model in place, we greatly reduced the amount time needed to tweak the vertex attachments, and the appearance of the animated model improved greatly (Figure 6).

Figure 3
Figure 3. The root of this limb is placed too low.


Figure 4
Figure 4. Correct placement of the shoulder joint.


Figure 5
Figure 5. Correct placement of the hip joint.


Figure 6
Figure 4. Correct placement of the shoulder joint.


The problem with the golfer in Jack Nicholas 5 illustrates the importance of getting skeletal positions correct in the beginning. To achieve this goal, I suggest turning the usual production sequence upside down, building the skeleton before you build the mesh. You can then build the model's surface by aligning your geometry to the appropriate bones of the skeleton as you go. This technique is similar to the way in which a sculptor uses an armature when creating a figure in clay. It lets you concentrate on orienting the surface contours of the body to the bones as you build them, and then create appendages along those naturally posed bones. So the first order of business is to get the skeleton into position, and this is where character sheets come in handy.


What's a Character Sheet?