Character Animation


Well, a static model, no matter how cool looking when it's standing there, is not terribly interesting in a first-person shooter. We're going to have to animate that sucker!

If we were a big name, big money shop, we might go out and hire a motion capture studio to make our animations. But we're not—we're indie developers! So we will have to explore other options, and there are some.

On the Internet you can find some stop-motion photography sequences that might help you develop your character animations. There are also freely downloadable files with character animations in them—they will probably have a different skeleton structure than the one we use here, but a certain amount of tweaking can go a long way.

I know someone who manually creates animations using action figures that he poses, changing the poses step by step as he works through the animation, converting what his eye sees into the appropriate frame in his animation program. This is certainly a good low-budget option.

In this book we are going to hand-build our animations, because the point is to learn how to do it. They may not be the best animations in the world (or maybe they will be!), but they will be your very own if you make them yourself. If you need a model, ask a friend or family member to step slowly through whatever it is you are trying to animate, if it's humanly possible. You'd be surprised how helpful that can be. Bribe them with their favorite dessert or something.

Animating Characters in Torque

The general method for making animated characters for use in Torque is to construct a skeleton that corresponds to components of the model and then attach that skeleton to the corresponding components in a process called rigging. We then create a sequence of keyframes—essentially a series of skeleton poses. When the Torque Engine wants to animate the model, it calculates the positions of the meshes in the model by the position and rotation of the nodes (the joints where the "bones" of the skeleton connect to each other) based on where the keyframes appear in the animation timeline.

We are going to create six different basic animations:

  • root (same as idle in some systems)

  • run

  • look

  • head

  • headside

  • death

Table 14.1: Torque-Supported Animation Sequences

Sequence Name

Description

root

This is the basic "not doing anything" animation—usually the character is standing and fidgeting.

run

This is the animation used when the character is running forward.

walk

When the character's speed is less than running speed, he walks, using this animation.

back

This is the animation used when the character is running backward.

side

This is the animation used when the character is running sideways, sometimes called strafing.

look

A simple animation where the character's right arm points where the character is looking, such as when holding a weapon.

head

The head looks up or down depending on where the character is looking.

fall

This is the pose of a character, or its animations, when the character is falling off a cliff or building.

land

It's the sudden stop at the end of a fall!

jump

This is a jump made while running.

death1

Like it says. One of 11 possibilities. You don't need them all, but like they say, "Variety is the spice of life, er, death, or something."

death2-death11

Ditto.

looksn

This is the same as "look", but with weapon held close.

lookms

This is the same as "look", but with arms loose.

scoutroot

This is the animation used when the character is astride something like a motorbike.

headside

This is the animation used when the character is turning its head from side to side.

light_recoil

This is the weapon recoil, used to show the character's reaction to firing a weapon.

sitting

This is the animation used when the character is seated, like sitting in a car.

celsalute

This is an animation, activated by Ctrl+S as default, an in-game salute or taunt animation. You can use it for whatever you want.

celwave

Activated by Ctrl+W as default, this is another in-game salute or taunt animation.

standjump

This is another jump animation, but this time from a standing pose, like "root".

looknw

This is another weapon "look" with a variation of the arms loose pose.

These animations correspond to character animation support built into Torque. The names must match the names used by Torque; however, we can add our own arbitrary animations and activate them from within the script programs if we want. There are also other animations that Torque supports that we won't cover here.

Note

Torque supports animating in several ways, one of which we are covering in this book, where the animation is embedded with the model in the DTS file. Another system Torque can use is the DSQ or Torque Blended Animation Sequence system, which has two important features: It supports blended animation, where two different animations are played for the same model at the same time, and it supports the separation of animation sequences from the model (DTS) using the sequence files (DSQ) format. Unfortunately, the MilkShape exporter for Torque does not support exporting sequence files. This might change in the future.

In Figure 14.75 the highlighted (black lines) sphere is a joint, or node. The spike between the two spheres is a "bone." The direction the spike is pointing indicates the relationship between the nodes. The node at the big end is the parent, while the other end is the child node. Notice that in Figure 14.75 the parent node is rotated 60 degrees between frame A and frame B, and the child node follows the rotation. The unattached node doesn't move. Note that the horizontal and vertical lines inside the nodes are angled in the rotated nodes, but not in the unattached node.

click to expand
Figure 14.75: Bone movement during joint rotation.

Open your myhero.ms3d file, if it isn't already open. Set Joint Size to 3.0 or 4.0 in the Preferences dialog box on the Misc tab. We need to use such a large joint size because the scale of the Hero model is quite a bit larger than the Standard Male from Chapter 9.

Building the Skeleton

Before we can create the animations, we need to construct the character's skeleton. We build the skeleton from the "bottom up" so to speak, beginning with the base node, and working toward the outer extremities.

  1. We will start with the base node (or joint), which we place at the origin: (0,0,0).

  2. Now make sure that the base node is selected, and then place another node roughly in the groin area. Figure 14.76 shows the relative appearance of these nodes. Make sure that the big end of the bone that joins these two joints is at the end where the base node is.

    click to expand
    Figure 14.76: Placing the base and pelvis nodes.

  3. Rename the new node as "pelvis".

  4. Add all the new nodes and label them appropriately. Figure 14.77 provides a guide to the node placement and their names.

    click to expand
    Figure 14.77: The Hero skeleton with labeled nodes.

  5. Adjust the mesh rotations to match the pose in Figure 14.78. You want the character slightly bent at the knees, with his left arm slightly bent beside him and the right arm bent up at 90 degrees. Starting with the base node and moving on to the pelvis, hips, and shoulders (in that order), adjust the joints of the skeleton. Remember to rotate hip, knee, elbow, and shoulder joints to move the joints at the extremities. Pay particular attention to the placement of the pelvis, lower spine, and hip nodes. The pelvis should be well below the level of the hip nodes, and they should be just a tad higher than the lower spine.

click to expand
Figure 14.78: The pose-adjusted skeleton.

Note

The node names and bones you see in Figure 14.77 are not in any way standard.They don't have to be. However, there are standard skeletons for other games that you can use. Torque also has a standard biped skeleton that is the same as the one used for CounterStrike. But we can't really take advantage of it, because it is only useful with sequence files, which we do not yet have the ability to use given the current DTS Exporter that is available. So we may as well use our own skeleton.

Rigging: Attaching the Skeleton

Now we have the skeleton built, the nodes have been named, and the bones are aligned into a pose we like. Next we are going to attach our model to the skeleton. That way, when the skeleton is manipulated, the mesh of the model will follow suit. It is during this step that you might be inclined to thank me for insisting that you retain mesh groups for the different model components like arms and feet and so on!

Rigging the Head

We'll begin with the head, just to get a feel for the rigging operation.

  1. In the Joints tab in the toolbox, choose the joint (or node) named "head". Make sure it appears highlighted in red in the wire-frame views.

  2. Switch to the Groups tab and choose the head mesh. It should appear highlighted in red, as you already know.

  3. Switch back to the Joints tab and click Assign. Now the head mesh is assigned to the head node. To double-check, just click anywhere in a blank space in a wire-frame view to make sure that no objects are selected, choose the head joint to ensure it is selected, and then click the SelAssigned (Select Assigned) button. The head mesh should appear highlighted. If not, go back and repeat these three steps.

Aw shucks, there it is—the head is now rigged! Of course, that's not the end of the story. There is still the rest of the model.

There's also the issue of what to do when a bone is rigged wrong. Sometimes it's a trivial fix, and other times you might have to rerig the whole model. Or you might have to rig a model by attaching a node to just a few vertices rather than a whole mesh or submesh. That can get very, um, fiddly—I guess that would be a reasonable description.

Part of the simplicity in rigging this model comes from the technique we used; building from primitives allows us to easily define meshes and submeshes. We'll use a "one node per mesh" rule of thumb. It can get trickier using other techniques, but sometimes those other techniques might be more appropriate for the model you want to build. It's a judgment call, as everything important tends to be. There is one exception—as there always is—to the "one node per mesh" rule that we'll get out of the way next.

Rigging the Torso

Okay, so the head was a cakewalk. It wasn't even necessary to show any pictures for you to be able to follow along. How about the torso then—duck soup again, no?

Well, yesI mean no, actually. No duck soup for this one!

The head mesh is attached to the head node, and that is fine. Tilting or rotating the head node will indeed move the head in the manner we want. There really isn't a whole lot to choose from. The neck is more a part of the spine than the head. The camera and mount1 nodes aren't even related to the skeleton. They are special nodes that will have a different role to play in Torque, which we'll cover later. So that leaves the head node to control the head mesh.

The torso, though, has at least five nodes that it might be attached to. But which should it be? Let's eliminate the neck node for now. That leaves the spine nodes or the pelvis node. Actually we can use more than one node for a mesh giving different parts of the mesh to different nodes. When we built the torso mesh, we actually combined two primitives together, remember that? One was the chest cylinder, and the other was the abdomen cylinder. We could have left them as two separate submeshes, but I wanted to show you how to join them together. We can still use them as if they were two separate meshes, by assigning their respective vertices to different nodes.

If you look at the nodes, you'll see that the pelvis node is pretty well the obvious candidate to control the abdomen part of the mesh. The upper spine node, although probably not as obvious, is likely the best candidate for the other node, because it exists in circumstances similar to the pelvis—there are limbs attached. So we'll go with these two and see how that works out.

What this will mean in terms of animation is that we can have the vertices that are attached to one node move in one way, while the vertices attached to the other node move differently. Or not. It all depends on how you rig it.

None of this is strictly necessary. The animations we are going to create don't actually require the torso mesh be given more than one node, but it's a good thing to learn, so we'll do it.

  1. To get started with rigging the torso, let's tidy up the ol' drawing board a bit by hiding all the meshes except the torso mesh. If you've forgotten how, just go to the Groups tab of the toolbox, choose each mesh, and click Hide. Unfortunately, we can't selectively hide parts of the skeleton. It's either all or nothing when it comes to the bones.

  2. Choose the pelvis node in the Joints tab.

  3. Switch to the Model tab and set the Select tool to Vertex mode. Then select the vertices that are the abdomen. You can use either the Front view or the Side view. Figure 14.79 shows the vertices to select.

    click to expand
    Figure 14.79: The abdomen vertices.

  4. Back in the Joints tab, click Assign. Now the vertices are attached to the pelvis node.

  5. Now choose the upper spine node, and then select the vertices for it, using Figure 14.80 as a guide.

    click to expand
    Figure 14.80: The chest vertices.

  6. Click Assign in the Joints tab, and that should do it.

  7. Double-check to make sure you didn't overlook any of the vertices by choosing each node in turn, clicking the SelAssigned button, and looking to see which vertices for that node might have been missed. If you did miss any, you can simply select the node, select the vertices, and then click Assign to add them to the nodes list.

There, that's the torso. It might not have seemed so difficult a task to you, but to me it was a nightmare! Well, maybe not that bad, but it shows you the kinds of decisions you will have to make when rigging your models. What goes where and how best will it work?

Now that we have a few nodes rigged, let's take a look and see what they actually do.

  1. If you don't have a button at the lower right called "Anim," then choose Window, Show Keyframer, and make sure there is a check mark there.

  2. Click Anim to activate the Keyframer.

  3. Using the Select tool in the Joint mode, select the pelvis joint (or you can use the Joints tab to do the selection).

  4. Use the Rotate tool in freeform mode in the Right Side view. You will recall that freeform rotation is a simple matter of selecting the Rotate tool, then clicking in the wire-frame view, and dragging the cursor left and right.

Now what you should be seeing is the entire torso, plus the head, rotate around the pelvis. You should also see some strange things as well. The arm, leg, foot, and hand meshes don't move. That's because they aren't rigged yet.

But notice that the leg bones are rotating when you rotate the pelvis. Aha! I don't know about you, but when I bend over, my legs don't move back. Well, not unless I'm floating in water, of course. So the pelvis node, while it seems to be an obvious candidate for bending your character at the waist, looks to not be the right one.

So go back, right now, and change it. It's simply the same procedure I showed you for the pelvis, except you do it for the lower spine node. Make sure to click the Anim button to take it out of the Keyframer first, or you won't be able to make the changes. I'll wait.

Musical Interlude.

There you are. Now that that's done, go back into the Keyframer as I showed you before, and check the rotation of the lower spine node.

Another Musical Interlude.

Good! So everything should be working as expected now. The torso and the head meshes bend over in unison, and all the bones attached above the lower spine bend in unison, as shown in Figure 14.81. As you've probably deduced, it is now a reasonably minor matter to rig the rest of the nodes. Use Table 14.2 to guide you in your rigging.

click to expand
Figure 14.81: Bending at the lower spine.

Table 14.2: Hero Rigging

Node

Mesh to Be Rigged

ZHead

Head

UpperSpine

Torso—chest-area vertices

LowerSpine

Torso—abdomen-area vertices

LShoulder

LArm

RShoulder

RArm

LElbow

LHand

RElbow

RHand

LHip

LThigh

RHip

RThigh

LKnee

LFoot

RKnee

RFoot

You just need to match a mesh to a node, attach it, and move on. I'm enjoying the music here, so you go ahead and do the rest of the rigging, and I'll sit back and relax.

Yet Another Musical Interlude.

Great! With that done, let's move on.

Idle Animation

The idle animation is the one used by Torque when the character is just standing there, doing nothing in particular. In some games you will see some pretty complex idle animation where the character scratches himself in rather inconvenient locations, looks around, scuffs his feet, and so on. We're just going to do a basic breathing sequence so that you'll know that the character is alive. The name for the idle animation in Torque is root.

Even with a basic animation, the watchword is subtlety. Don't overdo it.

  1. Make sure the Keyframer is enabled by clicking the Anim button in the lower-right corner.

  2. Set the number of frames in the Keyframer to 30. Do this in the right-hand edit box in the lower-right corner of the Keyframer (see Figure 14.82).

    click to expand
    Figure 14.82: The Keyframer control panel.

  3. Move the slider to the 1st frame.

  4. Choose Animate, Set Keyframe. This indicates that this particular frame is a keyframe.

  5. Move the slider to the 15th frame.

  6. Take note of the angle of the elbows and hands.

  7. Select the midspine node and rotate it 5 degrees around the X-axis.

  8. Rotate each of the elbows in the opposite direction by about 5 degrees to place them back where they were before.

  9. Choose Animate, Set Keyframe to set the keyframe attribute for this frame.

  10. Move the slider back to the 2nd frame.

  11. Choose Animate, Copy Keyframes.

  12. Move the slider to the 30th frame.

  13. Choose Animate, Paste Keyframes.

  14. Save your work!

Figure 14.83 shows the subtle pose difference between the 1st and the 15th frames. Now you can test your animation by clicking the Play button on the Keyframer controls. The Play button is the one that looks like a single arrow pointing to the right.

click to expand
Figure 14.83: The difference in poses.

As long as the Play button is down, the animation will loop. If you find it runs too fast, you can change the FPS number in the Preferences dialog box to a lower value to slow the animation.

Notice that when the animation is actually running, that subtle pose change becomes quite noticeable.

Tip

An excellent tool called characterFX is useful for creating animations, and it works well with MilkShape. Unfortunately, for logistical reasons it could not be included with the tools on the companion CD. However, it does a great job of streamlining the process and is flexible, so a quick Google search for it on the Internet might be worth your while!

Run Animation

The run animation is the staple of first-person shooters. Run and shoot, run and shoot. Our Hero character has a somewhat awkward lower body, which will tend to make any animation of him running look a bit goofy. Well, we'll turn that into a feature and capitalize on that goofiness.

  1. Set the Keyframer to 120 frames. Additional frames will be added after the 30 you started with for the idle animation.

  2. Move the slider to frame 31.

  3. Make sure that Operate on Selected Joints Only in the Animate menu is enabled.

  4. Rotate the right hip joint slightly and then choose Animate, Set Keyframe. The pose should be similar to the resting pose. The reason why we touched that hip joint at all is to ensure that there is at least one joint in the frame that was affected so that a keyframe will be made. You should have a pose much like that shown in Figure 14.84.

    click to expand
    Figure 14.84: Frame 31.

  5. Move the slider to frame 40.

  6. In the Right Side view, select the Base joint, and move it forward by one grid square and up about three-quarters of a grid square, as shown in Figure 14.85. This movement of the base joint moves the entire model—it's a transformation across the ground. This transformation is necessary in order to notify the Torque Engine that the model is moving and how fast it is moving. It doesn't need to be precise, but it does need to be there.

    click to expand
    Figure 14.85: Frame 40.

  7. Select the right hip, and then in the Side view rotate it so that the leg moves forward.

  8. Rotate the right knee forward as well, until the leg matches the configuration in Figure 14.85.

  9. Repeat the rotations for the left leg and move it backward. In order to get things looking right, you might have to adjust the joint positions slightly by moving them, but not by much.

  10. Rotate the left arm using the left shoulder node and the left elbow node, swinging the hand forward until it is approximately opposite the right leg, as shown in Figure 14.85.

  11. Set frame 40 to be a keyframe.

  12. Move the slider to frame 50. Use Figure 14.86 as the guide for this frame.

    click to expand
    Figure 14.86: Frame 50.

  13. Move the base node one more grid square to the right, but this time move it back down to the ground level.

  14. Move all of your legs and joints back to approximately the same configuration as in frame 31.

  15. Swing the left arm down to the side of the model.

  16. Set this frame (50) to be a keyframe.

  17. Move to frame 60. Use Figure 14.87 as the guide for this frame.

    click to expand
    Figure 14.87: Frame 60.

  18. Pose frame 60 the same as frame 40, except swing the legs in the opposite directions.

  19. Swing the left arm back and rotate the elbow so that the left hand comes up parallel to the ground.

  20. Set this frame to be a keyframe.

  21. Move to frame 70. Use Figure 14.88 as the guide for this frame.

    click to expand
    Figure 14.88: Frame 70.

  22. Swing the arms and legs back to roughly the pose they had in frame 31.

  23. Set this frame to be a keyframe. Use the Play Forward button to watch the animation. If the animation seems to be too fast or too slow, change the FPS setting in the Preferences dialog box until it seems right, and take note of the value you use.

Now you have probably noticed that although we set the pose in only five frames, the program automatically interpolated, or figured out, what the in-between frames should look like. Torque does the same thing for us when we use the model in-game. This is goodness. That's as much of the run animation as we're going to do here, but you should practice working with this for a while. The first place you should start is to set the keyframe exactly in the middle of the ones we've already set—at frames 35, 45, 55, and 65—and adjust the leg positions to get a better animation from the legs.

Don't try too hard to make the animation look natural though—he's a goofy character and should have that sort of goofy, cartoonlike appearance when running.

Head Animation

This is the animation that Torque automatically invokes when it needs to know how far your character is looking up or down. So basically this animation's purpose is to define limits or a boundary and not so much the movement. However, if your character's facial or head shape would change when looking up or down, then you would create a more complex head animation.

That being said, it is really quite quickly dealt with.

  1. Move to frame 71.

  2. In the Right Side view, rotate the head joint until the head is looking up at the maximum angle you want to allow. You may also need to move the head back a bit.

  3. Make this a keyframe.

  4. Move to frame 72.

  5. Rotate the head joint until the head is pointed down at the maximum angle you want to allow. You may also need to move the head forward a bit.

  6. Make this a keyframe also.

  7. Save your work! There, you are done. That's the entire animation sequence! Check your frames against Figure 14.89 to make sure you got it all right.

click to expand
Figure 14.89: Head sequence frames.

Headside Animation

In the same way that the head animation defines the limits for the up and down motion performed by Torque, the headside animation provides the limits for the left and right motion. This is most visible from the third-person perspective when in the game.

Do the same thing you did for the head animation, but use frame 73 for the left turn and frame 74 for the right turn. Make each of these frames a keyframe, and save your work when you finish.

Look Animation

The look animation is basically another movement-limiting animation that defines how the character's arms will be posed when he is looking up or down. Again, it is a simple two-frame animation that doesn't require us to go into in detail now. Use frame 75 for the down "look," or aim. Make sure you have both arms positioned sensibly. Use frame 76 for the up aim. Set both as keyframes and save your work again.

Death Animation

As you saw earlier, there are many possible ways to die. Torque supports 11 "standard" death animations, but you can easily add more by writing a minor code change into the scripts.

We'll cover only one death animation here. We'll have the character collapse backward and fall to the ground on his back with his feet tossing into the air and back down again.

  1. Move to frame 81 and set the pose back to resemble the resting pose as closely as you can, without spending too much time on it.

  2. Set this frame to be a keyframe.

  3. Move to frame 90 and rotate the arms and hands to match. You can have the character's head pop off temporarily, like I do, or leave it on but thrown back. It's your model! Let Figure 14.90 guide you.

    click to expand
    Figure 14.90: Frame 90.

  4. Set frame 90 to be a keyframe.

  5. Move to frame 100.

  6. In the Side view, drag the base node backward several grid squares.

  7. Continue to rotate and move the arms and legs, and rotate the body around the pelvis node to make the body tipped past the horizontal with the bottom of the torso higher than the top, as shown in Figure 14.91.

    click to expand
    Figure 14.91: Frame 100.

  8. If you haven't guessed it by now, make this frame a keyframe!

  9. Move to frame 110.

  10. The body is hitting the ground, with some momentum still in the legs. Align the bottom of the torso (which is actually the character's back) even with the ground. Rotate the legs and knees to fling the feet up over the body, and rotate the arms to fling them away from the body, as shown in Figure 14.92. By now the base node should be eight or nine grid squares behind the origin along the Z-axis, as seen in the Side view.

    click to expand
    Figure 14.92: Frame 110.

  11. Yup, this is another keyframe. Go ahead, make its day.

  12. Now for the final resting position. Move to frame 120.

  13. Lay the body out, flat against the ground. Also, move the base node one or two more grid squares farther back, to cause the body to slide along the ground. Lay the arms flat to the sides, the feet and legs down on the ground and spread somewhat. Tilt the head back. As you can see in Figure 14.93, he's dead, Jim.

    click to expand
    Figure 14.93: Frame 120.

  14. Keyframe him, Dano! (Okay, that's an obscure reference, I'll admit. Indulge me!)

  15. Save your work!

Well, that's the lot of them. Enough animations to give you what you really need to know to get moving on animating for Torque in MilkShape. There's still more to cover—we're not quite out of the woods yet. Now we have to tell Torque how to find the animations.

The Animation Sequence Materials

The Torque Engine needs to know where the various animations can be found, how long they run, what type they are, and how fast they should be run. We do this using a technique called the Animation Sequence Materials.

The general approach is that we create a special material, and embedded in the name of that material are the Torque name for the animation sequence, its desired playback frame rate, which frames belong to which sequences (inclusive from start to end), and whether the sequence cycles (loops) or plays once per invocation.

You need to go to the Materials tab of the toolbox and create six new materials—one for each animation sequence. Table 14.3 lists the material names you need to use. The text in the "Sequence Material Name" column must all be included in the name, exactly as shown. These special materials tell the Torque DTS Exporter program what special operation to perform on the model as it creates the DTS formatted file for use in Torque.

Table 14.3: Animation Sequence Material Names

Torque Sequence Name

Sequence Material Name

root

seq:root=1-30,fps=10,cyclic

run

seq:run=31-70,fps=15,cyclic

head

seq:head=71-72

headside

seq:headside=73-74

look

seq:look=75-76,fps=15

die1

seq:die1=80-120

Note that some of the Sequence Material Names don't include some of the option settings. If you leave them out, the defaults are used. A little later in this chapter you'll find more detail about the exporter.

Finally, there is one more special material we need to make, in order to set the global scale. We built this model on a large scale so we could use the Snap To Grid function without seeing our vertices snapped way out of line. Now, when we export the model, we will need to have it scaled down. Add a material and name it "opt:scale=0.02". This will shrink the model to one-twentieth its created size, which is about right for our needs.

Exporting the Model for Torque

In the next section of this chapter, we will look at the Torque DTS Exporter for MilkShape, but for now we'll just use it in a fundamental way to get our model to work in Torque.

  1. After saving your work, choose File, Export, Torque Game Engine DTS. You will see the Torque Game Engine (DTS) Exporter dialog box appear.

  2. We're going to take the defaults, but we should make sure they are correct. You want to have Export animation and Export material information selected, and Collision Mesh should be set to None (Torque handles player collision internally). Click OK when ready.

  3. Save your DTS file as C:\3DGPAi1\resources\ch14\myhero.dts.

That was pretty painless. Now let's make sure the model works! We'll dust off the old Torque Show Tool we used in Chapter 9 and check out the model.

  1. In Windows Explorer browse your way to C:\3DGPAi1 and launch the Show Book Models shortcut.

  2. Click Load Shape.

  3. Find RESOURCES/CH14/myhero.dts, choose it, and click Load.

  4. The model should appear in the center of the screen, facing away from you.

  5. Use the navigation keys (described in Chapter 9 in Table 9.1) to rotate the model and bring it closer to you. You should notice that it is already performing the idle animation (root).

  6. Click Thread Control. A window will appear on your screen, probably at the lower right. Drag it to the upper-left corner, or wherever is most convenient.

  7. Click Run in the Sequences list. The character should start the run sequence.

  8. Check out the other sequences, but remember, the ones that don't cycle are going to run just once and will stay at the last frame. You can use the Transitions button to adjust the transition speeds so that you can check to see if you are getting your desired results.

  9. If necessary, go back to your model in MilkShape and make adjustments to your animations, and then come back here to check them out.

Good job! The rule of thumb is, if it works in the Show Tool, it will work in the game, because the Torque Engine is behind both.

You now have an animated Hero character to use in your game! And it really isn't that difficult. If you are even a halfway decent artist and have a good eye, I'm sure your model and animations are much better than mine.

The next section provides some detail into the workings of the DTS Exporter for the Torque Engine. With its help, you should take some time to fiddle with settings and different animations and add your own animation sequences.




3D Game Programming All in One
3D Game Programming All in One (Course Technology PTR Game Development Series)
ISBN: 159200136X
EAN: 2147483647
Year: 2006
Pages: 197

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net