Editorial Policy
   Contact Information
   Advertising Info
   Publicist Info
   Privacy Statement
   Contact 3Dgate

TUTORIAL • February 1998

Learning to Crawl

It's been said that following even the most devastating environmental event, the Earth will continue to be overrun by insects, with cockroaches leading the pack. From the heart of the deepest jungle to the most sterile laboratory, bugs are a part of our daily lives, but when it comes to animation, they are often overlooked. Whether as a main character or a subtle detail to add realism in a scene, insects can be an important enhancement to a wide variety of 3D projects. But have you ever tried to animate a spider or other arthropod? In most cases, six or more legs can become a real problem when it's time to put them in motion. NewTek, the creator of LightWave 3D, has come out with Cyclist, a plug-in for LightWave 5.5 that can make it easier to animate multi-legged characters such as spiders, ants, bees, or, as you'll soon discover, cockroaches.

by Dan Ablan

Download the Lightwave 5.5 object and scene files: 0298roach.zip (PC, 51k) or 0298roach.sea (Mac, 52k).

Bug plug

Cyclist is part of NewTek's Motion Pack update for LightWave 5.5, and is sold as a set that includes the plug-ins Serpent, Follower, Oscillator, and Gravity. Cyclist is a motion plug-in that interpolates a preset group of keyframes and repeats them over time based on a parent object's movements. For example, you've built a cockroach and need to make it crawl across a kitchen counter. As the animation progresses, the camera pans down to a close-up view of the roach. For the purposes of your scene, it's important to have the movement of the critter's legs synchronized with its movement across the counter. Without the Cyclist motion plug-in, each leg would have to be keyframed, and its repeat motions would need to be timed based on the distance traveled by the bug. Using Cyclist, the roach will walk perfectly across the counter. As the roach begins to walk, the legs will begin to move, and as the roach walks faster, the legs move faster. If the roach slows down, the legs slow down. Think about the work it would take to animate an insect without the luxury of a plug-in-crawling and stopping, backing up, crawling again, and so on. It would be quite an endeavor to say the least.

This tutorial will guide you through the workings of Cyclist and show you how to set up a cockroach to walk (or crawl) across a counter. Figure 1 shows a frame from the animation used for this article. Here, the cockroaches crawl across the kitchen counter at different speeds, but only one walk cycle was used. Because the cloned roaches all have the Cyclist plug-in applied, the leg movements for the roaches are configured to automatically match the speed of the roaches' bodies. Follow along to see how this powerful plug-in operates.


FIGURE 1. The roaches crawl at different speeds using one walk cycle. The cockroach model was created by Komodo Studios.

From the ground up

The first step in creating an animated crawling cockroach is to build the object. Bill Fleming and his team at Komodo Studios (www.komodostudios.com), based in Escondido, CA, created the cockroach model used in this tutorial. The object was built and surfaced by Fleming, so all I needed to do was separate the legs and put them in motion. The cockroach was taken apart leg by leg in Modeler to prepare for animation and was set up using the following steps:

Step 1-To use Cyclist, some time-consuming set-up is involved. However, this is time well-spent in comparison to how long it would take to calculate and keyframe every footstep of every leg of the roach. Each leg has four pieces that need to be keyframed. Figure 2 shows the legs together in Modeler.

Step 2-Each leg segment is separated and saved with file names such as: LB_1.lwo, for left back, piece one; LB_2.lwo, for left back, piece two; and so on. Each of these leg segments are saved in their original positions-the legs were built, aligned with the roach object, taken apart, and saved. This procedure allows the segments to be loaded directly in place in Layout.

FIGURE 2. Each leg of the cockroach has four segments, shown together in one piece in this image.
Step 3-Once in Layout, the main roach body is loaded. From there, each of the individual leg pieces are added. Figure 3 shows the leg segments loaded. Notice how each segment loads in the proper position, shown in bounding box mode.

Step 4-A null object needs to be added to the scene as an overall movement controller. This null object can be renamed for organizational purposes, allowing you to globally control many objects. Each leg must be parented to its appropriate parent. For example, the left back leg LB_1.lwo is the parent for the left back leg LB_2.lwo, which is the parent to the LB_3.lwo, and so on. The LB_1.lwo is a child of the main null object. Figure 4 shows LightWave's Scene Editor.
Note the indented listings-these are the child objects of the object listed above it.

FIGURE 3. The individual leg segments load directly into place in Layout because they were saved in the proper orientation in Modeler.
Step 5-Because the legs were saved off of the center axis in Modeler, their rotation will be awkward and inaccurate in Layout and must be fixed manually. This is done by repositioning the particular object's pivot point. Although the objects load directly in place in Layout, their pivot points need to be moved into position so that the legs will rotate properly. Figure 5 shows one of the leg segment's pivot points being moved into position.

Step 6-At this point, the legs are in place, and their pivot points are lined up. Next, apply the Cyclist plug-in. Begin by selecting one of the leg segments. Press m on the keyboard to enter the object's Motion Graph panel. Select the Motion Plug-ins drop-down menu, and load Cyclist.

Step 7-Once Cyclist is selected, click the Options button to enter the controls for the plug-in. Figure 6 shows the Cyclist plug-in interface.

The Cyclist plug-in needs to be applied to every object for which the animated motions will be repeated, such as the leg motion. This process gets a bit tedious because there is no global selection for the objects. For the cockroach model, 24 objects (four segments on six legs) need to be put in motion.

FIGURE 4. The leg segments are set up in a hierarchy, as shown here in the LightWave Scene Editor.

Across the top of the Cyclist plug-in interface, you'll see on/off controls for Move, Rotation, and Scale. When you create keyframes for the object, having these buttons on tells Cyclist to use the keyframed motion to set these values. Beneath these buttons is the setting for Cycle Frames control. Here, you tell Cyclist which frames for the selected object to cycle (repeat). From there, you set the Cycle Controller-for the object that will be moved in Layout-to have the cycled objects (the legs) follow along. For example, if you had a car driving down the road, its four wheels would have the Cyclist plug-in applied, and the car itself would be the controller. For our purposes, the cockroach body is the Cycle Controller.

A drop-down menu defines the applied keyframe by either X, Y, Z position, rotation, or scale. In regard to the cockroach, the objects are moving along the Z-axis, so this value should be set to Z. Leave the Cycle range setting at 0.0 to 1.0.

FIGURE 5. The pointer in this figure shows the pivot point for one of the leg segments. Each leg segment's pivot point needs to be moved into position.

Step 8-Back in Layout, you need to set the keyframed motions for each leg. Although you don't need to create keyframes for the legs throughout the animation, Cyclist needs a few keyframes to understand what movements to "cycle." To achieve this, set the keyframes of a basic walk cycle over 20 frames (this tells Cyclist to repeat the process for 20 frames). An example would be to bring the back left leg of segment one up over seven frames. It moves forward at frame 12, then returns to its original position at frame zero, only the last keyframe is 20.

Step 9-Next, the back right leg would do the same thing, only it would start moving a few frames later. The back right leg would then have its original resting position at 0 hold for five frames. At frame 9, the portion of the leg rotates up, and at frame 15, it moves forward. At frame 20, the leg returns to the original position that it was in in frame 0.

This walk cycle should be set for each segment on every leg. While tedious to set up, when it's time to animate, your character's legs will move based on the movement of the character.

FIGURE 6. The Cyclist motion plug-in interface looks unassuming, but has powerful results.

Once the keyframes are in place for all segments of the legs, you can enter their Motion Graph panels to apply the Cyclist plug-in. When in the Motion Graph panel, set the End Behavior to Repeat, which will keep the legs walking, then apply the Cyclist plug-in, which controls when the legs move.


FIGURE 7. This image created by Bill Fleming of Komodo Studios shows the crawlin' critters under attack. The cyclist plug-in helps make animations like this much better and easier than before.

Working out the Bugs
This exercise is a quick look at NewTek's Cyclist. Its ease of use and productive results can translate into more control over your animations. And, its functionality doesn't end at adding motion to mere insects. Be sure to try Cyclist on cars, motorcycles, four-legged creatures-or be daring and apply it to a human object! Remember, Cyclist acts like a controller for parented items that have repeating motions. Using this plug-in will help you achieve more realistic results by removing the need to calculate distances and rotations, not to mention eliminating the tedious keyframing formerly required for complex scenes. Cyclist and the entire Motion Pack from NewTek is an exciting set of plug-ins that is well worth the investment and is highly recommended for your LightWave arsenal. 3D

Dan Ablan is president of AGA Digital Studios Inc. in Arlington Heights, IL, which produces 3D animation for broadcast and corporate video. Dan is the author of LightWave PowerGuide and Inside LightWave 3D 5.5, both from New Riders Publishing. Feel free to bug Dan at [email protected]

Cyclist (included with
Motion Pack-$249)
LightWave 5.5 ($1,995)
NewTek Inc.
210-370-8000 or 800-843-8934