You will need to use expressions that scale/ multiply the amount of motion. I'm sure there's already some simple parallax expression out there...
An expression would indeed be the way to go.
Parent the child to the parent and add an expressions like:
You can play around with the 0.9 of course.
Are there any expression presets that allow you to scale the movement--I've looked through them, and it's hard to tell what each one actually does.
Thanks Zino. I've never worked with this before. Can you give me a better description of the controls I need to use to set the 0.9?
I'll break it up for you.
thisComp.layer("PARENTLAYERNAME") refers to the foreground element you want your background elements to 'follow'.
transform.scale and transform.position refer the effect you want to control, being scale and position in the examples.
The times 0.9 is a value I randomly picked. You can choose anything you want depending on how strong you want the children to follow the effect of the parent layer.
I would suggest creating a project to test project with two 'linked' solids in order for you to see what values have which effect.
You need to replace PARENTLAYERNAME with the name of your parent layer. (But I guess you know that.)
Thanks. I understand the parenting, but how do I plug in the random value? I don't know where that function is?
I'm using the Pickwick to link the parent & children
To add an expression to a property, select the property in the Timeline panel and choose Animation > Add Expression or press Alt+Shift+= (Windows) or Option+Shift+= (Mac OS).
Yes, thanks--I've been able to get to that point. Where do I change the value?
By editing the expression and changing it using your ... keyboard.
Or am I completely missing the point here?
I think you are making this much too difficult. If you have foreground, middle ground, and background layers make them all 3-D and arrange them in 3-D space then add a camera and move the camera. Your parallax shift will be automatic and perfect if you arrange the layers properly.
As you move the layers in z space you can scale them up so your composition looks right. You can't even use a simple expression to tie the distance of the layer to the camera to automatically fix the scale.
If you want to just move a layer on the x axis half as far as the foreground layer moves in x then the expression would look like this:
mlx = thisComp.layer("master").position;
sf = .5 // scale factor;
nx = mlx * sf;
[value + nx, value]
In English this expression says mlx equals the master layer x value
The scale factor (sf) is 50% experssed as a decimal
The new x value (nx) is equal to the master layer x position times the scale factor
Then you just write an array for the original x value plus the new x value and take the existing y value from this layer.
This expression gives you the opportunity to keyframe both the X and Y position of the layer. If I wasn't typing this post on my phone I would've taken the time to subtract the master layer X and Y position from Half of the comp height and width so the following layer would not have to be brought back into position after writing the expression.