cameraTrack is a milestone in the motionMatching project. For more information about that project, go to the motionMatching homepage.
Download the source code cameraTrack.tar
View the source files for cameraPath, guiShift, shiftPath
The cameraTrack suite consists of three plugins.
The cameraTrack suite of plugins is used for adding cameras to Maya whose
properties change per frame. The camera properties are read from
a file by one of the plugins. The other two plugins allow for easy
property editing of the moving camera within Maya. This is to allow
the user to adjust the cameras due to miscalibration in motion control.
cameraPath - read the camera input file and create the camera with all
attributes keyed.
shiftPath - take a selected camera and for a given attribute, change all
the attributes for each keyframe by a certain amount.
guiShift - take a selected camera and allow the user to use the mouse to
move and allign the camera.
Detailed usage instructions:
cameraPath
cameraPath -n <camera name> -f <file name>
<camera name> is the name of the camera.
<file name> is the location of the camera track file.
The camera track file is a tab delimited file with one line for each keyframe.
Each line should have the following information. frame number, x, y, z,
rotate x, rotate y, rotate z (in radians), scale x, scale y, scale z, vertical
film aperature, horizontal film aperature, focal length, fstop, and focus
distance.
shiftPath
shiftPath -a <attribute name> -v <value>
You must first select a camera before running this command.
If you selected a camera's transform node, <attribute name> is one of
the following:
translateX
translateY
translateZ
rotateX
[in radians]
rotateY
[in radians]
rotateZ
[in radians]
scaleX
scaleY
scaleZ
If you selected a camera's shape node, <attribute name> is one
of the following:
horizontalFilmAperture [maximum value is 1200]
verticalFilmAperture [maximum value is 1200]
focalLength
[maximum value is 3500]
squeezeRatio
fStop
[maximum value is 64]
focusDistance
shutterAngle
centerOfInterest
<value> is the delta change you want to accrue to the attribute
(neg or pos)
guiShift
You must first select a camera before running this command. You must
select the camera's transform node or shape node as apropriate (like you
have to do with shiftPath. example: if you want to change scaleX,
you have to select the camera transform node. if you want to change
focalLength, you have to select the camera shape node. You can not
change both with the same invocation of the plugin)
After you run guiShift, a window will popup with a button on it.
You may make changes to the camera any way you like, via the mouse or the
attribute editor. Once you have change the camera, press the button.
The plugin will compute the delta change from before you ran the plugin
to right before you clicked the button and it will apply the change to
every keyframe for any attribute that changed.
Note: After you press the button the window will not close.
Close the window manually.
Note: You must have shiftPath loaded before using guiPath.
Image Planes
If you are representing a camera from a motion control camera file
with the intent of placing an animated object in a real world environment
it is helpful to view the camera images in the background. This can
be accomlished by using image planes.
In Maya, you attach an image plane to a camera. When you look through
a camera with an image plane you see the image in the background.
If the image plane has a movie file assoicated with it, the movie will
change the frame on the image to match the current animation frame in Maya.
To implement this:
Highlight the camera you want to create an image plane for.
Bring up the attriubte editor (ctrl-a)
Click on the triangle to show the options under "Environment"
Click on "Create"
In the input box for Image name, type in or browse to the image or movie
file.
If this is a movie file and you want the image to change accroding
to the current animation frame number in Maya, check the box "Use Frame
Extention". Next, change the current frame number to the start frame you
want the movie to start from in Maya. One way this is done is to
use your mouse and either scrub or click the desired frame number on the
frame bar at the bottom of the Maya screen. Once this is selected,
right click over the "Frame Extention" edit box and set a key. Next,
click on the frame in the Maya frame bar that you want to be the ending
frame of this image. Type in the frame number that you want the image
to show at this key in the "Frame Extention" edit box. Right click
over the "Frame Extention" edit box and set a key. You can
now play or scrub your animation and the image on the image plane with
change with the animation.
** DEVELOPER INFORMATION **
There is a make file in the development directory. Simply type
make and all three plugins will be compiled.
Each plugin has one source file and there are no compile dependencies between
them. [some plugins require other plugins to be loaded in order to
run, but not compile.]
The following information regarding Maya plugin development were found
on the net. None of the resources were useful, but are included for
completeness.
Intro to MEL/API
http://reality.sgi.com/tkluyskens_aw/txt/melapi/
SGI
Conductor Plugin Program
http://www.aw.sgi.com/pages/home/pages/plug_ins/pages/conductors/index.html
Maya Queen
http://reality.sgi.com/tkluyskens_aw/txt/queen.html
Flay.Com. Lightwave 3D Tutorial, Plugin,
Information and TechniquesSearch Engine
http://www.flay.com/
Maya Discussion
Forum
http://www.3drender.com/discussion/index.html
Another Maya Discussion Forum
http://www.lumis3d.com/msgboards/