方法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,就会被进行除法运算,然后留下余数。
网友评论