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.
set to 100,100,100
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.
set to 50, 50, 50
Rotation values are also relative to an object’s parent.
set to 45°
set to -90°
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.