-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Expressions
Unfortunately, expressions are similar to javascript but not quite the same.
So for converting and evaluating the code, I use Esprima and Escodegen.
A subset of expressions is supported.
If you need all expressions converted to keyframes because you are using one of the players that don't support expressions, under Expression options
you can check the option Convert expressions to keyframes
and all expressions will be exported as keyframes.
If you just need a single expression converted, on the expressions editor of After Effects, you can add a commented line
// lottie:bake
and that expression will be exported as keyframes.
In both cases the original animation won't get modified.
All expression controls are supported. You should have no issues linking any of the supported properties to an expression control.
functions like wiggle are not supported.
Probably some will in the near future.
You can set your own function inside the code.
If you set the string 'use javascript' as the first line of your expression, the plugin won't parse your code and you can get a significant performance increase.
For your code to be javascript compliant, please declare all vars and use operators limited to what javascript supports.
For example don't use an addition operator to sum two arrays.
Since expressions can target each other, it can create an infinite loop, so in these scenarios AE evaluates the property value before applying an expression. This has a very specific order.
Layers are executed from the top down
Anchor Point
Position
Scale
Rotation
Opacity