Mike Clasby
Forum Replies Created
-
I like you am learning how complex expressions can be, I suggest you get a hold of the Meyers Book, Volume2 (3rd edition) and the chapter on expressions (and the bonus chapter) is very enlightening. Much to digest. If you’d have known about linear interpolation (making one set of values proportional to another, you could have figured out your expression with pickwhipping and the “Expression Language Menu” (that little triangle next to the pickwhip).
Linear Interpolation is just figuring out how to translate the -80 to 0 degree rotation of the one layer to the 0 to 60 degree rotation of the other layer.
The linear interpolation from “Expression Language Menu” is:
linear(t, tMin, tMax, value1, value2)
then you’d highlight the “t” and pickwhip that to the rotation of the layer that rotates (the -80 to 0 layer, I used a White Solid) to get:
linear(thisComp.layer(“White Solid 1”).rotation, tMin, tMax, value1, value2)
then you plug in the values, -80 and 0 (t min, tmax, again the White Solid) and the 0 and 60 (value1, value2) to get your final expression:
linear(thisComp.layer(“White Solid 1”).rotation, -80, 0, 0, 60)
Get a copy of:
Creating Motion Graphics with After Effects, Volume 2: Advanced Techniques
by
Trish and Chris Meyer
Then you will be aware of what’s possible and maybe can inkle it out yourself.
-
Maybe ask at Adobe After Effects Support.
-
It sounds like you want the layers to appear at random sizes at random positions and hold that for awhile, then change again, if so here’s some expressions. If you want the layers to change size while on the move see the bottom of the post for Dan’s excellent site.
Just put the illustrator file into the comp you want it to appear in, then add these expressions’ the first one for position, the second for scale:
holdTime = .5; //time to hold each position (seconds)
minVal = [0.1*thisComp.width, 0.1*thisComp.height];
maxVal = [0.9*thisComp.width, 0.9*thisComp.height];seed = Math.floor(time/holdTime);
seedRandom(seed,true);
random(minVal,maxVal)————————————————————-
holdTime = .5; //time to hold each position (seconds)
minVal = 50;
maxVal = 200;seed = Math.floor(time/holdTime);
seedRandom(seed,true);
random(minVal,maxVal)
s = random(minVal,maxVal);
endVal = [s,s];————————————————————
Then just dup the layers (Ctrl D) to get as many as you want. The way its setup all the layers will change at the same time, if you want different times for each layer, change the “hold time”, I’d change the “hold time for both position and scale the same for a layer, unless you want the layer popping to a new size while still in the same position.
Also if the timing is still to much in sync, slide some of the layers, up or down the timeline, so they start at different times.
For scale you can also change the minimum and maximum sizes (in pixels).
These are modified a bit from Dan’s site, and maybe one of his many samples are more to your needs.
https://www.motionscript.com/mastering-expressions/random-1.html
-
It sounds like you want the layers to appear at random sizes at random positions and hold that for awhile, then change again, if so here’s some expressions. If you want the layers to change size while on the move see the bottom of the post for Dan’s excellent site.
Just put the illustrator file into the comp you want it to appear in, then add these expressions’ the first one for position, the second for scale:
holdTime = .5; //time to hold each position (seconds)
minVal = [0.1*thisComp.width, 0.1*thisComp.height];
maxVal = [0.9*thisComp.width, 0.9*thisComp.height];seed = Math.floor(time/holdTime);
seedRandom(seed,true);
random(minVal,maxVal)————————————————————-
holdTime = .5; //time to hold each position (seconds)
minVal = 50;
maxVal = 200;seed = Math.floor(time/holdTime);
seedRandom(seed,true);
random(minVal,maxVal)
s = random(minVal,maxVal);
endVal = [s,s];————————————————————
Then just dup the layers (Ctrl D) to get as many as you want. The way its setup all the layers will change at the same time, if you want different times for each layer, change the “hold time”, I’d change the “hold time for both position and scale the same for a layer, unless you want the layer popping to a new size while still in the same position.
Also if the timing is still to much in sync, slide some of the layers, up or down the timeline, so they start at different times.
For scale you can also change the minimum and maximum sizes (in pixels).
These are modified a bit from Dan’s site, and maybe one of his many samples are more to your needs.
https://www.motionscript.com/mastering-expressions/random-1.html
-
Check out parenting in the Help files.
In the parent Column (if not showing, right click any column (like source name) in the timeline box and Columns > Parent) pickwhip (the thing that looks like @) and drag it to the layer you want to be the boss), or choose from the drop down.
Now any transformations to the parent will also effect the children.
-
You could just create a solid and simlarly off set it in Z (copy/paste position, then add offset)and parent it to the Original.
-
Probably the easiest way:
Dup the layer (Ctrl D)
Add 0.1 to the Z position
Effect > Render > Fill (still dup layer) – choose a color you like (red default)
Parent the Dup layer to the Original Layer
Now any camera moves or Original layer rotations will have a solid color as the back.
-
Sweet expression, thanks.
-
Sweet expression, thanks.
-
Mike Clasby
March 30, 2006 at 6:44 am in reply to: anyone know where a tutorial for AE IK is…. building a puppet arm?By horizontal or vertical I mean the anchor points of the parts need to be aligned perfectly horizontally (or vertically with corrected expressions), then apply the expressions. Guides or horizontal/vertical thin solids help to align, as you can’t be off by much and have it work.