Expressions are the most convenient way to automate courses of motions, and regular or repetitive animations without scripting knowledge. With expressions you do not have to worry about keys, because you simply enter a formula and can immediately see the results. Expressions can also be made event-based: you define a certain condition to switch on a certain feature, e.g. rigid body dynamics. Such a condition could either be a particular frame or the position of a null object, to name but a few.
...
Info |
---|
In order to apply an expression, right-click on a parameter's name in the → "Node Params" panel and choose "Edit Curve...". Now enter an expression to the empty field at the "Curve Editor" panel's bottom. |
...
Basic sine curve | sin(t) |
---|---|
Basic cosine curve | cos(t) |
Create five times more ups and downs | sin(t*5) | cos(t*5) |
Create ups and downs between -3.0 and 3.0 | 3*sin(t) | 3*cos(t) |
Shift the entire sine curve by 1.5 seconds | sin(1.5+t) |
Switch a node's simulation state from "Inactive" to "Active" at frame 50 | if(f>49,1,0) |
Set an emitter's "Speed" value from 2.0 to 0.0 when a sphere's X position is greater than 1.0 | if(sphere01.position.x>1.0,0.0,2.0) |
Create a random value between 0.0 and 2.0 | rnd(2.0) |
Add noise between 0.0 and 1.0 to a sine curve | sin(t)+rnd(1.0) |
Create circular motions around the vertical axis (two expressions!) | X position: sin(t*3) and Z|Y position: cos(t*3) |
Activate an object's "Active rigid body" state at t = 2.5 seconds | if(t=2.5,1,0) |
Switch from "Active rigid body" to "Passive rigid body" at frame 10 | if(f>9,2,1) |
Add a vertical offset of 2.0 to a sine curve | 2+sin(t) |
Create a falling exponential curve starting at 5.0 (frame 0) | 5*exp(-t) |
Make the exponential curve decrease faster | 5*exp(-t*3) |
Animate an emitter's rotation around an axis between -30° and 30° | sin(t)*15 |
Animate an emitter's rotation around an axis between 60° and 80° | 70+sin(t)*10 |
Randomize the rotation from above between 60°- 65° and 75°- 80° | 70+sin(t)*(5+rnd(5)) |
Create a zig-zag curve with many repetitions | tan(sin(t*10)) |
Create a smooth acceleration effect with a position parameter expression | sinh(t) |
...