【AE表达式】时间重映射里循环的两个表达式

方法1

loopOut();

方法2

(time+value)%source.duration;


方法1没啥好说的,就是循环两个关键帧,默认里面就是cycle,没啥好说的。。


方法2是刚想到的小办法,是什么鬼呢?

time,就是现在合成的当前时间;

value就是当前属性值,所以用这个办法的话,只保留一个关键帧就可以了;

time+value,就是以当前时间加上属性值,得到比现在时间更早或者更迟的时间;


问题来了,假如time+value超过了预合成里面的总时长之后,怎么办呢?

不用if else,让time+value不断的除以这个预合成的时长,获得余数,就对了。

所以source就是指代这个预合成的源,duration代表的就是对应的持续时间。

所以只要time+value超过了source.duration,就会被进行除法运算,然后留下余数

你可能感兴趣的:(【AE表达式】时间重映射里循环的两个表达式)