There is no inherent difference between 2D and 3D project files in Motion. At any point, you may decide to start working with groups or layers in 3D. Doing so requires no preplanning on your part; in fact, it’s possible to go back and forth between manipulating objects in 2D and 3D space. This section covers the tools you can use to move objects around in the Canvas.
The image in the screenshot above has just been imported into the scene and is positioned at the scene’s origin. Use the 3D Transform tool—located to the right of the 2D transform tools in the toolbar—to move the image.
Tip: You can select the 3D Transform tool by pressing Tab when the 2D Select/Transform tool is active (and an object is selected in the Canvas). Pressing Tab again cycles through the various 2D transform tools.
Select the 3D Transform tool in the toolbar (or press Q).
Two things happen immediately when you select the 3D Transform tool. The onscreen controls change, and the object’s HUD displays additional 3D transform controls.
When you select the 3D Transform tool, three colored arrows appear in the Canvas near the center of the image. Each arrow corresponds to one of the three coordinate axes. In the default view, the Z axis points directly toward you, so only the tip of the blue Z arrow is visible. Dragging an arrow moves the image along an axis.
Select the object to move.
Drag a colored arrow.
When dragging, the active arrow turns yellow and the status bar above the Canvas displays the current coordinates of the object as well as the distance the object has moved. Coordinates are given in the form of X, Y, and Z.
Near the three colored arrows are three small circles.
These are rotation handles. Placing the pointer over a circle invokes a rotation ring for the axis.
Select the object to rotate.
Move the pointer to the rotation handle (small circle) corresponding to an axis of rotation.
The rotation ring appears.
Drag the ring to rotate the object.
The status bar displays the current Rotation values as well as the amount the object is rotated.
Select the object to rotate.
Place the pointer on a rotation handle, then hold down the Command key.
All three rotation rings appear.
While continuing to hold down the Command key, drag anywhere inside the rings to rotate the object.
The status bar displays the absolute rotation values as well as the delta (amount of change) in rotation.
Important: Rotation performed with the 2D Select/Transform tool is only around the Z axis.
In addition to the onscreen controls, the HUD provides another method of transforming objects in 3D space, using a set of graphical transform controls.
Tip: As in the Inspector, holding down the Shift key while you drag in the HUD makes larger changes. Holding down the Option key while you drag makes smaller changes.
To constrain rotation to the Z axis, hold down the Command key while dragging.
To constrain scaling to the axis corresponding to the initial direction of the drag, hold down the Command key while dragging.
To better understand the concept of relative coordinates, think of a system of satellites, like the earth, the moon, and the sun. The moon’s parent is the earth, and the earth’s parent is the sun. Usually, when considering these three bodies, the moon’s position is described in terms of its position relative to the earth (the moon’s parent), and the earth’s position is described relative to the sun (the earth’s parent). In Motion, an object’s position and orientation are always relative to its parent.
When you add a group to a Motion project, that group is created at the origin coordinates of its parent. In the case of a root-level group (a group that is not nested inside other groups in the Layers list), the parent is the project itself. An object placed inside a group has its position described relative to its parent: the group.
In the example above, a group is positioned at X, Y, and Z coordinates of 100, 100, and 100, respectively. The group is located 100 pixels away from its parent’s origin on all axes (the parent in this case being the project itself). The image inside the group is positioned at 0, 0, 0. Because the image’s position is relative to its parent, the group, it shares its parent’s origin and has an apparent position in the world of 100, 100, 100.
Moving the image to a position of 50, 50, 50 displaces it by 50 pixels from the group’s origin in all axes. You can see in the image below that the porcupine is now exceeding the visible area of the Canvas. Although the image’s apparent position relative to the world is 150, 150, 150, its Position values in the Inspector are 50, 50, 50 because its position is always relative to its parent.
Rotation values are also relative to an object’s parent.
Important: World and view transforms are limited to the HUD and onscreen controls; all transforms made in the Inspector are relative to an object’s parent’s space.
When compositing in 2D, the Layers list shows the layer order, which determines the stacking order of objects in the Canvas. Objects higher up in the Layers list appear in the Canvas on top of objects lower than them in the Layers list.
Important: The children of 2D groups are composited in layer order.
In the following example, the Layers list shows the Blue A group is above the Red B group, and the Canvas displays the Blue object above the Red one.
If you move Group A below Group B in the Layers list, Group B is rendered on top of Group A.
The Layers list also shows object relationships in terms of parenting. The parent-child relationship is displayed in the Layers list through the use of indenting and disclosure triangles.
The Layers list is not the only indicator of order when considering objects in 3D. When depth-sorted, an object can be at the bottom of the Layers list and yet appear to be on top of everything else in the Canvas, because of the object’s position relative to the current camera. The most common way to adjust depth order is to change the Z position of a layer or group.
Important: The children of 3D groups are composited in depth order by default.
With the 3D groups above, objects are composited in depth order; their position in the Layers list does not correlate to their position in 3D space relative to the camera.
In the above example, the Blue A group is above the Red A group in the Layers list but it appears behind the Red A group in the Canvas because it is depth-sorted. The same principle applies to the Blue B group and the Red B group.