Вы находитесь на странице: 1из 5

***** This document and the associated Maya file (dolly.

mb) are very technical, and


***** are meant for 3D Animators who direct in 3D.
***** By Per Holmes. ©2004-05 Hollywood Camera Work.
***** www.hollywoodcamerawork.us

3D DOLLY/CRANE

This Maya scene shows how to rig a dolly/crane in 3D to make 3D cameras behave more
like real-world cameras.

Loading:

1.) Dolly.mb is for Maya 5 and up.


2.) After loading, press 6 to view with shading.
3.) Play the timeline.
4.) Select Panels->Perspective->camera10Shape to view the move from camera’s
perspective.

The dolly rig included in the file is the same as used in The Master Course in High-End
Blocking and Staging, so naturally most of the rigging is to accommodate geometry for
rendering purposes. This rig is merely meant as demonstration of a concept. For 3D
filmmaking you may want to rig your own dolly/crane from scratch, since such a rig
doesn’t need any geometry and will be much simpler.

The idea behind this rig is that normal keyframed 3D cameras can often behave
erratically and be hard to control. Because 3D cameras can move so freely, 3D camera
work often gets the feeling of being “all over the place”, and very often feels like 3D or
video game.

In order to give 3D camera work a cinematic feel, it can be useful to rig a virtual
dolly/crane in 3D to constrain the camera to the same physical parameters as physical
camera support equipment.

A normal dolly/crane consists of a base which can track left/right, and a boom arm placed
at a certain elevation which can rotate left/right and up/down. The camera is attached to
the end of the boom, and can pan/tilt/roll. Regardless of the specific camera support
equipment, this is the basic function of anything from a tiny tripod-dolly to a 100ft crane,
the only difference being the length of the boom.

Instead of animating the camera directly, we’ll then set up a structure (with or without
geometry) with the following hierarchy:

1.) A container group that allows us to position and rotate the entire rig.
2.) A dolly base that can only move on one axis.
3.) An elevation point above the base that allows us to control how high the pivot of
the boom arm is positioned.
4.) A boom arm of any length attached to the elevation point.
5.) A camera attached to the end of the boom arm.

Our controls are then the following:

1.) Dolly left/right.


2.) Boom Pan and Tilt.
3.) Camera Pan, Tilt and Roll.

Camera Pan, Tilt and Roll can either be animated directly, or with an Aim Constraint. In
addition, we’ll be able to change the length of the boom, and how high it’s positioned,
but we wouldn’t normally animate these parameters.

THE RIG IN THE MAYA FILE

The rig in “dolly.mb” is made of 3 objects:

Dolly10 - which contains all keyable attributes, and holds the entire rig.
Camera10 - which is the Maya camera.
CameraGreen - which is a green piece of geometry to show the position and orientation
of the Maya camera, and simply copies the Translate and Rotate XYZ
from the Maya camera. This object is not necessary, but very convenient.

Most of the objects in Dolly10, such as Wheels and Track, are geometry for display
purposes and are not important, so let’s just cover the important objects:

1.) The Dolly10->Dolly object is the dolly base. Animating translateX slides the
dolly left and right. The child “Base” is the geometry to show the base and
wheels.
2.) Attached to Dolly10->Dolly->Base is a cylinder called “VerticalPosition” which
is there to determine how high above the base the boom arm is positioned.
3.) A locator “BoomHeightLocator” is parented to the cylinder at the end. We move
that locator up and down by scaling the cylinder-geometry on the Y-axis, thereby
changing the height of where the boom arm will be attached.
4.) The Boom arm itself is another cylinder which is Point Constrained to
“BoomHeightLocator”. The Boom object is placed within the Dolly10 hierarchy,
but since it’s Point Constrained, it gets its translateXYZ from the absolute
position of “BoomHeightLocator”, and not the Dolly10 hierarchy.
5.) We change the length of the boom by scaling the boom cylinder on the X axis.
6.) We Pan and Tilt the boom by rotating the boom-cylinder on the Y and Z axis.
7.) At the end of the Boom geometry we’ve attached another locator
“CameraLocator”.
8.) The Maya camera “camera10” is Point Constrained to this locator.
9.) Pan, Tilt and Roll are controlled by animating camera10’s rotateXYZ directly.
In order to make this easy to animate, we’ve collected all attributes within the root of
Dolly10, which then remote control the various translates, rotates and scales within the
Dolly10 hierarchy and camera10:

boomPan, boomTilt control rotateY and rotateZ of Dolly10->Boom.


cameraPan, cameraTilt control rotateX and rotateY of camera10.
dollyMove controls translateX of Dolly10->Dolly.
elevation controls scaleY of Dolly10->Base->VerticalPosition.
length controls scaleX of Dolly10->Boom.
FocalLength copies Focal Length value to
camera10->camera10Shape->focalLength for convenience.
Visibility Toggles visibility of Dolly10 hierarchy. CameraGreen
copies this value so entire rig can be Shown/Hidden by
changing Dolly10’s visibility.

This makes it extremely easy to animate all camera functions from a central place. The
way this is set up, the Maya camera only gets its translate XYZ from the dolly hierarchy,
and rotate XYZ are animated directly. This is done so that if we decide to rotate the dolly
rig, our pans and tilts don’t rotate with it, and won’t need to be completely re-animated.

You’ll notice that there’s no control for Roll. The need for Rolling is quite rare, so it
hasn’t been added as an attribute. But it would be very easy to add an attribute to Dolly10
that controls the rotateZ parameter of camera10.

ANIMATING THE RIG

The easiest way to animate the rig is to simply set the track and dolly up in a way that
will allow the movement we want, and then keyframe the relevant channels in Dolly10.
It’s best to default to Flat Tangents, and then tweak the keyframes from there.

For many moves, we need to work on the pan/tilt curve. If we’re for example doing a
move where we push in on a character at an angle, we’ll need to pan slowly in the
beginning, and then pan harder and harder to keep him in the frame. If we don’t work on
the pan-curve, the panning will not be in sync with the dolly move. This can be fixed
either by adding more Spline keyframes, or by working with the Tangent weights.

The fewer keyframes we do, the better, even if they’re smooth spline keyframes, because
you can somehow feel the keyframes, even if they’re very well done. So the best way is
to limit ourselves to start and end keyframes whenever possible and only tweak the
curves by working on the Tangent weights.

A useful MEL script to put in the Shelf is:


keyTangent -edit -weightedTangents true;
keyTangent -weightLock off;
keyTangent -lock off;

Running this script with keyframes selected in the Graph Editor releases their Tangent
weights. We can then select the weight-handles and shift-drag them left/right on the X-
axis (time). It’s best to always only move weights in time. Moving them up or down
causes hard breaks around keyframes that are very visible and displeasing.

MULTIPLE CAMERAS

For blocking camera work in Maya, it can be useful to animate all cameras that are in a
scene, and then actually cut between the cameras from within Maya as if it’s a multi-
camera shoot. With audio loaded on the timeline, this is a great way to get a real-time feel
for how all cameras complement each other in the blocking. Come rendering-time, this
also makes it very easy to know which time-ranges need to be rendered for each camera-
angle.

Akihiro Yoshida has written a public domain MEL script “Switching Camera”, which
allows one to cut between any number of cameras within Maya. It works by creating an
output camera called “cameraMain”, which copies all parameters from whichever camera
is selected in the “cameraNumber” attribute. This attribute can either be keyframed
manually, or with the GUI that’s provided (which allows you to select cameras by name).

The script “ak_switching_camera.mel” is included in this zip-file.

REDISTRIBUTION

You are welcome to use the dolly model in both private and commercial multimedia
productions, but the model may not be redistributed, sold, rented or leased without the
express written permission of Hollywood Camera Work.

© 2004-05 Hollywood Camera Work


“Switching Camera” is © Akihiro Yoshida

Вам также может понравиться