The information in this article applies to:
- Softimage 3D for IRIX, version 3.51
- Softimage 3D for Windows NT, version 3.51
SUMMARY
The purpose of this article is to demonstrate how to create a caterpillar
track motion system using the following tools: Spline Deformations,
Expressions, Skeletons, and Constraints. The techniques employed in this
tutorial can be improved upon and/or modified to suit your specific project
needs. This tutorial is designed for users who have a basic knowledge of
SOFTIMAGE 3D.
SOFTIMAGE 3D version 3.51 was used to create this tutorial. If you are
running a different version of SOFTIMAGE 3D, certain menu options may have
different locations or slightly different names.
This tutorial also appears, with images, in the Tips and Tricks section of
the Softimage web site. To view it with images, enter the Softimage
address: http://www.softimage.com on the URL line of your Internet browser.
When the Softimage home page appears, select Support & Training, then
choose the Tips and Tricks option.
MORE INFORMATION
Step I: Creating the Track System
From the Model Module:
- Choose Get > Primitive > Circle. Make it a B-Spline with a radius of 5
units and a Step value of 8.
- Scale the circle 0.5 units on the y-axis. You now have an oval-shaped
circle.
- Switch to TAG mode. In the Front view, translate the sphere's top
middle point 1.5 units on the y-axis, and the bottom middle point -1.5
units on the y-axis. Your curve should now have a racetrack-like shape.
Step II
- Choose Get > Primitive > Cube.
- Switch to OBJ mode and scale the cube: X = 0.12; Y = 0.03; Z = 0.19.
- Rotate the cube 90.0 degrees around the X and Z axis.
- Freeze both the Scaling and Rotation of the cube (Effect >Freeze).
- Choose Duplicate > Repetition. Only specify: No. of Occurrences = 19
and Translation for Y = 1.3. In the Schematic view, you will see a
branch containing 19 duplicate cubes. Select the Parent Null of this
branch and make it the Parent of the original cube that you used to
make the duplicates. In the Front view, the cubes are stacked on top of
each other on the positive y-axis.
Step III: Spline Branch Deformation
- In Single mode, select the entire branch of cubes using the right mouse
button.
- Choose Deformation > by Curve > Branch > Create. Then pick the B-Spline
curve. The branch is now deformed on the B-Spline curve, but it is not
closed.
- To close it, scale the branch 1.105 units on the y-axis. Now the
deformed branch's ends meet.
Step IV: Creating the Landscape Model
- Get a Primitive B-Spline Patch Grid and accept the default values.
- Scale the grid to 10.0 units for the X, Y, and Z axis.
- With the grid selected, choose Effects >Randomize. Set: X = 0; Y = 0.1;
Z = 0; Repetition = 5. The grid's surface will be deformed.
- Choose Draw > Extract, and pick the curve on the grid that is on the
horizontal plane parallel to the B-Spline curve that represents the
track deformation branch. (In Top view, this curve appears in the middle
of the grid.) An extracted B-Spline curve will be visible.
- Hide the extracted B-Spline curve for the moment. You will need to use
it later in the exercise.
Step V: Global Envelope
- Draw a 2D Chain with 1 joint. Draw from the bottom-middle section to
the top-middle section of the B-Spline track.
- Make two duplicates of the chain. Translate the first duplicate -3.5
units on the x-axis, and translate the second duplicate 3.5 units on
the x-axis. You will see three single-joint chains arranged
side-by-side.
- Select the B-Spline track curve, and choose Skin > Global Envelope,
then pick each chain one-by-one. You have just created a new branch IK
Chain/Envelope assembly.
Step VI: Spline Deformation, Clusters and Constraints
- Get a Primitive Cylinder and accept the default values.
- In TAG mode, tag the points in the upper row of the cylinder.
- Choose Tag > Set Cluster, and click New in the dialog box.
- Repeat the Set Cluster command for the points in the middle and bottom
rows of the cylinder.
- With the cylinder selected, choose Deformation > by Curve > Node >
Create, and pick the extracted B-Spline track curve (extracted from the
Grid).
- In LCL mode, translate the deformed cylinder 50.0 units on the y-axis.
- Scale the deformed cylinder so that X = 0.05; Y = 1.5; and Z = 0.05
units.
- With the cylinder still selected, choose Tag > Cluster List, and select
the first Cluster from the Cluster List Browser.
From the Motion Module:
- In the Front view, select the root Null of the IK Chain that is
parallel to the cylinder's active Cluster.
- Choose Constraint > Object to Cluster, and pick anywhere on the
cylinder. You will see the Root Null constrain in position to the
cylinder's active Cluster; the area of the B-Spline track curve that
is weighted to this IK Chain's Root Null translates on the positive
y-axis.
- From the Model module, select the cylinder.
- Choose Tag > Cluster List, then select the second Cluster from the
browser.
- Select the IK Chain's Root Null that is parallel to the cylinder's
second Cluster.
- In the Motion module, choose Constraint > Object to Cluster, and pick
the cylinder. You will see the second IK Chain's Root Null constrain in
position to the cylinder's active Cluster (second Cluster).
- Repeat the last two operations in order to constrain the third IK
Chain's Root Null to the cylinder's third Cluster.
Step VII: Expressions & Animation
From the Motion module:
- Get a primitive Null, and translate the Null 5.0 units on the y-axis.
- Select the cylinder, and choose Expressions > Edit.
- Select the "nsftry" Fcurve from the Fcurves Browser. This Fcurve will
be associated to the Effected Element (cylinder).
- For the Expression, select the Null from the "Scn Elements" browser.
- For the Expression Fcurve, select the "etrnx" Fcurve from the Fcurves
browser.
- The Expression must be modified with an argument in order to
synchronize the translation of the cylinder relative to that of the
Null. The Expression must look like the following:
Null2.etrnx + 50
- Create a second Expression, this time selecting the Deformation Branch.
The Affected Element's (Deformation Branch) Fcurve should be the
"bsftry" Fcurve (selected from the Fcurves Browser).
- For the Expression, select the Null from the "Scn Elements" browser,
then select the "etrnx" Fcurve from the Fcurve browser.
- As in the previous Expression, an argument must be added to this
Expression in order for the Deformation (the track model) to maintain a
motion relative to the Null's translation. The expression must look
like the following:
Null2.etrnx * - 1
Step VIII: Test the Track Motion System
- Translate the Null locally on the x-axis. You will see the track system
translate along the Extracted B-Spline curve and the Deformation
Branch (the track) will translate around the B-Spline track curve (as a
caterpillar track would). To save a key for the Null, choose SaveKey >
Object > Explicit Translation X.
- Un-Hide the grid model that is used as the landscape for the scene.
- Activate Shade mode from the Perspective view. If you see parts of the
Deformation Branch model (track) penetrating the surface of the grid,
simply translate the Extracted B-Spline curve on the positive y-axis.
The entire track system will also translate accordingly.
- You can add wheels to the track system by making any IK Chain joint the
parent of a wheel model. The wheel model will follow the motion of its
IK Chain parent.
- To add a chassis to the track system, simply make the middle IK Chain
joint the parent of the chassis model.
REFERENCES
SOFTIMAGE 3D Reference Guide: A to H, Interface, page 211. (Constraints)
SOFTIMAGE 3D Reference Guide: I to Z, Interface, page 1297. (2D chains)
SOFTIMAGE 3D Reference Guide: I to Z, Interface, page 1273. (Expressions)
If you have any question concerning the information contained in this
article, contact support@softimage.com by e-mail. If you include "ATT:
Pierre Duranleau" (the support Engineer who created this tutorial) on the
subject line, he will personally address any questions that you have.
|