7 Replies Latest reply on Sep 27, 2008 9:06 AM by (Marcel_Gutierrez)

# Parenting one value only

what is the process to parent motion to one value only?
I'm trying to put some text into live motion video and have it appear to be in the scene (like in any number of movie trailers, or the new show on Fox "Fringe") where the camera will push in past it. I've been successful in getting the basic placement and camera motion to get it pretty close, but the original shot is handheld, so it bounces around a little bit. My thought was to analyze the motion of the shot, then apply the tracking values (in this case, y values only) to the text layer so it moves up and down along with the rest of the shot. The problem is that when i apply the tracking data to the text, or try to parent the motion of the text to a null object with the tracking data applied to it, it affects all of the text location values (x, y, z) when i want it to only affect the Y value.
I'm sure that there is an expression that i need here to clear it up, but being new to expressions and all, i'm having quite a time of it. Any suggestions? thanks in advance

-gardner
• ###### 1. Re: Parenting one value only
Position is represented as a 2 or 3 number array, starting with 0. So x = position[0], y = [1], z = [2]. If you split up the position, you can add in only the y value (pos[1]).

What I usually do is split my regular position keyframes onto seperate expression sliders, 3 sliders for x, y, and z. Then, I'd also add an offset slider, so it's easy to dial in the values, rather than typing offset numbers into the actual expression.

So, you're position expression could be something like this:
posx = effect("X")("Slider");
posy = effect("Y")("Slider");
posz = effect("Z")("Slider");
nully = thisComp.layer("BG_TRACKER").transform.position[1];
offsety = effect("OffsetY")("Slider");
[posx, posy + nully + offsety, posz]

PS. You can also use "value" instead of splitting the original pos values into seperate sliders, but I prefer my way.
• ###### 2. Re: Parenting one value only
If you want to only apply the Y value from your tracking then apply the following expression to your 3D text layer position property:
y = thisComp.layer("footage").motionTracker("Tracker 1")("Track Point 1").featureCenter[1];
[value[0], y, value[2]]
Your footage layer should be named "footage" or you should change the ("footage") part of the expression to the name of your layer. You can reposition the layer in X and Z and it will track the feature center in Y.

You might also want to try this variation:
y = thisComp.layer("footage").motionTracker("Tracker 1")("Track Point 1").featureCenter[1];
[value[0], value[1]+y, value[2]]
This will allow you to also reposition the text layer in Y, even animate the position, and still have it track in Y only

A better approach may be to Stabilize your footage including rotation, then add your text footage and put it where you want it, then remove the stabilization by tying the position property of the footage layer to the anchor point property by an expression using the pickwhip, reverse the rotation value with an expression, then tie the Track points and rotation values to the text layer to make it move around. Hand held footage seldom moves in only one axis and this would give you better results.
• ###### 3. Re: Parenting one value only
thank you both for your input. I'm going to give both (or rather, all three) methods a shot and see which one works best for this project, but keep 'em all around for the future.
Appreciate the help!

-gardner
• ###### 4. Re: Parenting one value only
Gardner, I too like the "Fringe" title effects. Did you have any luck with these methods?
I'd like to create those types of titles, but I'm not an AF guru.

MCG
• ###### 5. Re: Parenting one value only
The Fringe opener was done by AE whiz Andrew Kramerer. Check out his site at Videocopilot.net -- lots and lots of tutorials that cover the basic concepts of that look.
• ###### 6. Re: Parenting one value only
Marcel,
yeah, i've had some success with it. If you do a simple camera move (i've been sticking with basic push ins, did a 180 degree spin around, but they've been handheld) it's not too difficult. I basically put the video on the bottom layer, created a new 3d text layer with a camera, oriented the text in 3d space so it appeared to be where i wanted it to be at the end, and worked backwards, orbiting my 3d camra around to match the actual camera move as best i can. For the push ins, it helped to do some motion tracking and apply it to the text to compensate for my shaky hand. It doesn't look great, but it's not bad either. It'll take some more practice. If i get them online soon, i'll post a link.

Navarro,
yeah, andrew kramer/videocopilot.net has been a big help for me in learning AE. When trying to do this effect, i also used his technique to cast shadows on the ground from my text (which is really easy to do). Like i said, i've been getting alright results trying to do this myself, but nothing like Fringe. For that, he used 3DS Max for the 3d text and Boujou (\$10000 motion tracking software) to recreate the camera move. That, and the fact that he's amazingly talented makes for some really cool stuff.
I would definately reccommend his site for anyone looking to learn what is possible with some of those effects that come with AE, not just what they are.
• ###### 7. Re: Parenting one value only
Thanks Navarro and Gardner. Kramer's web site (and his work) is amazing. I had seen his bloodsplatter tutorial but had not been a frequent visitor. That will change.

MCG