| Coordinate
Systems
Ted Boardman tedb@tbmax.com
http://www.tbmax.com
Where
in the world…
Have you ever
wanted to place an object on top of an inclined surface of another
object and ended up spending much too much time moving and rotating
in all four viewports and still only getting the object approximately
in place? Or have you tried the Align command only to abandon it
in frustration?
One issue in
3D Studio Max and VIZ that I see as a fundamental hindrance to production
for many users, both new and experienced, is a lack of understanding
of the coordinate system. To use several important commands in both
VIZ and Max users must understand the various coordinate systems
in the software. The Align and transform type-in commands being
the most notable. In both Align and transform type-in you are asked
to enter numeric data to align or array objects along the X-, Y-,
or Z-axis. However, the direction of X, Y, or Z depends on the active
coordinate system and the active viewport.
All
users are familiar with the Absolute World coordinate system in
VIZ or Max because it is defined by the default Grid planes that
show in the viewports when you start VIZ and Max. However, the World
Coordinate System is just the starting point for the possibilities
for maneuvering and manipulating objects in space.
|
Reference Coordinate System
In
the Toolbar menu, you will see a field with View in it by
default. This is the Reference Coordinate System that is currently
active. Click on the View field and you will see a pop-up
menu of the different Reference Coordinate Systems available.
See Figure 1.
|
|
Fig 1. Menu showing available Reference Coordinate Systems
for VIZ 3 and 4 and max 4.
|
Note:
max 5 has an additional Reference Coordinate System called Gimbal
I will talk
you through a simple exercise that will illustrate some of the differences
between the various Reference Coordinate Systems. You can either
try the exercise on your computer or, better yet, just read along
to get the idea, then go to the computer and do the exercise. In
any case, at some point you should sit down and just play with very
simple objects to get a feel for how the system works. As with many
VIZ and Max tools, don’t try to learn this during the deadline
crunch on a large project. With a little practice the Reference
Coordinate Systems will become second nature and your productivity
will increase accordingly. At the end of the article I will summarize
the attributes of each system.
Getting
the Lay of the Land
Start with a
new session of either VIZ or Max. The display should be set to four
viewports -Top, Front, Left, and Perspective. In the Top viewport,
create a Cylinder in the middle of the display and click the Zoom
Extents All button. See Figure 2.

Fig. 2 Cylinder zoomed to the extents in four viewports
I’ll talk
you through a description and some exercises that will highlight
the individual Reference Coordinate Systems that appear in Figure
1.
View
Reference Coordinate System
Notice that
the Axis Tripod shows positive X to the right, positive Y up, and
positive Z out toward the viewer and that the current active Reference
Coordinate System is set to View. Right-click in the Front viewport
to activate that viewport without deselecting the cylinder and notice
that the Axis Tripod adjusts to make the positive axis’s point
in the same relative directions as in the Top viewport. Right-click
in the Left viewport to see a similar change. The Axis Tripod adapts
itself to the orthographic viewports while in View Reference Coordinate
System so that positive X is always to the right, positive Y is
always up, and positive Z is always out toward the viewer.
Now, right-click
in the Perspective viewport and notice that the Axis Tripod corresponds
to the World coordinate system by aligning with the Home grid. You
can check it against the small tri-color tripod in the lower left
corner of each viewport that always indicates the World Coordinate
System. This is true for all non-orthographic viewports while in
View Reference Coordinate System - Perspective, User, Camera, and
Light viewports.
Tip:
You can activate a Light viewport by selecting a light and pressing
Shift + $. This allows you to look down a light from the light source
to see exactly what the beam covers. The navigation buttons at the
bottom right of max or VIZ will switch to light controls, also.
Omni and Point lights cannot use this feature, of course.
Screen
Reference Coordinate System
Right-click
in the Top viewport, then click View in the Toolbar and choose Screen
Reference Coordinate System in the list. Right-click in the other
viewports and notice that the Axis Tripod. Screen Reference Coordinate
System is exactly the same as View for orthographic viewports –
X to the right, Y up, and Z out. However, for non-orthographic viewports
the positive Z-axis points out of the screen toward the viewer.
Arc-Rotate in the Perspective viewport and watch the Axis Tripod
move in the other viewports. Screen Reference Coordinate System
allows you to move objects in space based on your line of site in
non-orthographic viewports and is useful for moving logos across
the scene, for example.
World
Reference Coordinate System
Right-click
in the Top viewport and switch to World Reference Coordinate System.
Right-click in the other viewports and you will see that World coordinate
system is always active for all viewport types.
Parent
Reference Coordinate System
The next Reference
Coordinate System in the list is Parent, which requires an object
to be hierarchically linked to another object in the parent/child
relationship. In Parent Reference Coordinate System, the child always
uses the parents’ Local coordinate system, which will be explained
next.
Local
Reference Coordinate System
Right-click
in the Top viewport and choose Local in the Reference Coordinate
System list. Right-click in the other viewports and the Axis Tripod
is the same as it was for World Reference Coordinate System. This
is a coincidence because you created the cylinder in the Top viewport.
Right-click in the Perspective viewport and rotate the cylinder
roughly 45 degrees in both the X and Y View Reference Coordinate
System. See Figure 3.

Fig. 3 Rotate a cylinder at some random angles in at least two axis.
At this point
you will notice that even though you had the Reference Coordinate
System set to Local, it switched automatically to View when you
picked the Rotate button. The current Reference Coordinate System
is sticky for each Transform; Move, Rotate, and Scale. Once you
set the Reference Coordinate System it will be retained for that
Transform until you change it again. The Axis Tripod also changes
to the Transform Gizmo when the Transform buttons are picked.
Right-click
in the Top viewport, click the Move Transform button, and set the
Reference Coordinate System to Local. Right-click in the other viewports
and you will see that the Axis Tripod stays oriented to object as
it was created. This is an especially powerful tool for production
that you will want to familiarize yourself with.
Grid
Reference Coordinate System
The Grid Reference
Coordinate System requires that you create a new Grid Helper object
as the active work plane. Right-click in the Top viewport to activate
it. In the Status bar of VIZ, toggle the Autogrid feature on. In
max you will find the Autogrid checkbox at the top of the objects
in the Create panel, Object Type rollout, that you can check after
you select the one of the buttons.
Click the Box
button, check Autogrid if you are using max, and as you move your
cursor over the cylinder you will notice a tri-color cursor track
the Face Normal of the face under the cursor. Hold the Alt key,
and pick and drag a Box primitive on the end cap of the cylinder.
See Figure 4.

Fig. 4 You can create objects directly on any surface with the Autogrid
feature. Holding Alt while you do this creates a permanent grid
object in that plane.
Holding the
Alt key while creating an object in Autogrid mode concurrently makes
the new grid in the scene and makes it the active grid. Switch to
Grid Reference Coordinate System and the X, Y, Z axis of the Grid
are used for the current Transform.
Click the Select
button, pick the new Grid object in the active viewport, right-click
on the Grid and, in the pop-up menu, choose Activate Grid, then
Home Grid to return to the default grid system. You can have as
many Grid helpers as you want, but only one can be active at any
time. You can reactivate the new Grid at any time. Grid Helpers
are similar to UCS grids in AutoCAD.
Pick
Reference Coordinate System
In
the Pick Reference Coordinate System you can use the coordinate
system of another object in the scene as the current system. Right-click
in the Top viewport to activate it and create a small Sphere to
one side of the cylinder. Change the Reference Coordinate System
to Pick and pick on the cylinder in the Top viewport. The sphere
is now using the cylinders’ Local Reference Coordinate System
as its own. Also, Cylinder01 is added to the list of available Reference
Coordinate Systems.
|
Pivot
Point Options
Another
aid to production that goes hand in hand with the Reference
Coordinate Systems is the active Pivot point type Just to
the right of the Reference Coordinate System window is a flyout
menu with three choices of Pivot Point types. Understanding
the different options makes Transforming objects with Reference
Coordinate Systems a more flexible and powerful tool. See
Figure 5.
|
|
Fig 5. Flyout menu of Pivot Point options
|
Pivot
Point Center
In the Top viewport,
select all the objects in the scene. With the Pivot Point Center
option set you will notice that each selected object will be Transformed
based on its current active Reference Coordinate System around its
own individual pivot point. This is especially interesting when
you are in Rotate or Scale Transform. (Caution: never Scale objects
in either VIZ or Max. Always apply an Xform modifier and scale the
Xform Gizmo.)
Selection
Center
Choose Use Selection
Center in the flyouts and you will see that the entire selection
set of objects uses a single Pivot Point in the geometric center
of the bounding box of the selected objects. This is most appropriate
for rotations.
Transform
Coordinate Center
The Transform
Coordinate Center uses the 0,0,0 Absolute World Coordinate point
except when Pick Reference Coordinate System is active. The selected
object then uses the Pick objects Pivot Point as its own.
Summary
The attributes
of the various Reference Coordinate Systems is:
•
View – the Axis Tripod adapts itself to each orthographic
viewport so that positive X-axis is to the right, positive Y-axis
is up, and positive Z-axis is perpendicular out of the display.
Non-orthographic viewports resort to using World Reference Coordinate
System.
• Screen – same as View in orthographic
viewports. In non-orthographic viewports the positive Z-axis always
points at the viewer.
• World – coordinate system always
corresponds to the Absolute World Coordinates.
• Parent – the child object uses the parent’s
Local coordinate system in a hierarchically linked parent/child
relationship.
• Local – the coordinates always remains
with the object as it was created, regardless of rotation angle
of the object.
• Grid – uses the active Grid systems
coordinate system.
• Pick – uses the Local coordinate
system of another object that is picked in the scene.
For the Align,
Array and Mirror commands in VIZ and Max, always check the current
active Reference Coordinate System to see which X, Y, and Z-axis
is being used by the command. The mode is noted in the Align or
Array dialog. See Figure 6.

Fig. 6Active Reference Coordinate System shown in parentheses in
the Align dialog
(Hint:
View Reference Coordinate System is never listed in Array, Align,
or Mirror commands. You will always see Screen, which is the same)
As I mentioned
at the outset of this column, these are incredibly powerful tools
and options that are simple to learn. You are doing yourself a great
disservice if you aren’t using these effectively in production
every day. Start with simple examples to get the feel of the options
and it will come naturally as you work.
Good luck and
have fun.
|