Move2D

Function
This function combines many of the other transform nodes together, including Pan, Scale, Shear, Rotate. The xCenter and yCenter apply to both scaling and rotation centers. If you need to have different centers, you can append a second command (Move2D, Rotate, or Scale) and switch either scaling or rotation to that node. This will not cost you anything, as Shake concatenates neighboring transforms into one big transform. Therefore, you won't lose either quality or calculation time.

Note also that Shake's infinite workspace will also come into play when you have either two transforms together (ie, one rotates the image, the second one rotates its back, without the corners getting clipped). However, in terms of a work-flow, this means that whenever you pan around small elements that will later be comped onto larger resolution backgrounds, you don't have to crop your small elements out to create a larger space.

Parameters
Type
Defaults
Function
x,yPan
float
0, 0 x and y Pan values.
angle
float
0 The rotation angle
aspectRatio
float
1 The aspectRatio of the image. Useful when you are working with a Global aspectRatio and anamorphic frames and you are doing a rotation.
x,yScale
float
1, xScale Scaling on the x and y axis.
x,yShear
float
0, 0 Shearing on the x and y axis.
x,yFilter
string
"default", "default" Jump to Filter Types.
transformOrder
string
"trsx"

The order the transform is executed, with

t = translate
r = rotate
s = scale
x = shear

By default, this is set to "trsx".

inverseTransform
int

 

0

This inverts the transform. This can quickly convert tracking data to stabilization data.

motionBlur
float
0 Motion Blur quality level. 0 means no blur, whereas 1 represents standard filtering. For more speed, use less than 1. This value gets multiplied by the Global Parameter motionBlur.
shutterTiming
float
.5 Shutter length. 0 means no blur, whereas 1 represent a whole frame of blur. Note that standard camera blur is 180 degrees, or a value of .5. This value gets multiplied by the Global Parameter shutterTiming.
shutterOffset
float
0 This is the offset from the current frame at which the blur is calculated. Default is 0, previous frames are less than 0.
useReference
int
0

Applies the transform to the image or doesn't. If it doesn't, and you have animated values, it will apply a motion blur to the image, but not actually move it. This is good for adding blur to plates. See below for an example.

0 = Move image
1 = Smear-mode; image is not moved

referenceFrame
int
time This is used for stabilization. Usually, this is set to "time", ie, in reference to itself. However, if you have toggled inverseTransform to 1, you are doing stabilization, with the assumption that any animation you have applied matches up to the source animation. Setting the reference frame will lock the movement in to a specific frame.

Synopsis

 image Move2D( 
  image,
  float xPan, 
  float yPan,
  float angle, 
  float aspectRatio,
  float xScale, 
  float yScale,
  float xShear, 
  float yShear,
  float xCenter, 
  float yCenter,
  const char  * xFilter,
  const char  * yFilter,
  const char  * transformationOrder,
  int inverseTransform, 
  float motionBlur,
  float shutterTiming,
  float shutterOffset,
  int useReference,
  float referenceFrame
 );

Script

 image = Move2D( 
  image,
  xPan, yPan
  angle, aspectRatio,
  xScale, yScale,
  xShear, yShear,
  xCenter, yCenter,
  "xFilter", "yFilter",
  "transformOrder", 
  inverseTransform,
  motionBlur,
  shutterTiming,
  shutterOffset,
  useReference,
  referenceFrame
 );

Command Line

shake -move2d xPan yPan angle aspectRatio etc....

Example of using useReference
This Move2D inputs rendered images of a pendulum swinging. We want to add blur by using useReference. We first find the center of rotation for the pendulum and enter that as the Move2D's center. We then figure out the rotation, and animate our angle to match that, so using this example, my angle is -40 at frame 5, and 40 at frame 24. I then toggle on useReference, setting it to 1. Finally, I turn up the motionBlur to 1:

frame 5
frame 12
frame 24

 

See Also
Pan, Scale, Shear, Rotate, Move3D, CornerPin, Scroll