AE循环表达式最全面教程+循环时间的控制教程 |
您所在的位置:网站首页 › ae重复循环 › AE循环表达式最全面教程+循环时间的控制教程 |
废话不多说,我这里只有干货。 首先前面是给初学者看的,全面解释ae循环表达式用法。 如果你已知道,请下拉到最后第三大点的,如何控制循环表达式的开始和结束的时间。 该时间控制教程可以套用在大多数表达式中。 首先我们要知道怎么打开循环表达式,因为太简单了, 不会的看参考教程https://jingyan.baidu.com/article/a3a3f8113a721a8da2eb8a92.html 再不会请自行百度教程.... 然后里面的四个基本表达式,分别是: loopIn(type = "cycle", numKeyframes = 0) loopOut(type = "cycle", numKeyframes = 0) loopInDuration(type = "cycle", duration = 0) loopOutDuration(type = "cycle", duration = 0) 一、首先说明他们相同的地方type =“?” 可以替换为不同的循环类型 拿loopOut来举例: 类型1 圆形循环loopOut(type="cycle",numkeyframes=0) cycle是个圆形的类型的循环,就是对一组动作进行循环。 如果你有5个关键帧,分别为12345。 那它的循环模式就是12345,12345,12345,12345。(如下GIF图) 圆形循环 类型2 乒乓循环loopOut(type="pingpong",numkeyframes=0) pingpong 是个兵乓的类型的循环,就像那样兵乓球的作用来使用。 同上,如果你有关键帧12345个关键帧, 那它循环模式就是12345,54321,12345,54321(如下GIF图) 乒乓循环 类型3 弥补循环loopOut(type="Offset",numkeyframes=0) Offset意思根据关键帧计算出后面运动轨迹。(例子:下台阶循环,只需做一套动作,自动继续计算出下台阶的动作) 同上,如果你有关键帧123个关键帧, 那它循环模式就是12345678910...直至运动到合成画面外看不见(如下GIF图) 弥补循环 类型3 持续循环帧loopOut(type="continue") 延续最后一帧的方向和运动速度,做不停做动作。 同上,如果你有关键帧123个关键帧, 那它循环模式就是123,3+n...直至合成画面外。(如下GIF图) 持续循环帧 二、In和Out的区别,numkeyframes和Duration区别1.loopIn的意思:用这个表达式为例 loopIn(type="cycle",numkeyframes=0) 假设循环的关键帧设在6-8秒时候为一套动作。 那么6秒前秒会一直循环6-8秒的这套动作(不一定是由第1关键帧开始,要看前面空出的时长), 循环到达6秒到达关键帧,开始完成最后一套动作,在8秒时结束循环。(如下GIF图) loopIn备注:可以看到动画开始时,是由第5关键帧开始循环,因为该循环在6秒时候要开始吻合最后的5个关键帧,所以开始的位置对应推算。 2.loopOut的意思:用这个表达式为例 loopOut(type="cycle",numkeyframes=0) 假设循环的关键帧设在4-6秒时候为一套。 那么4秒前时间循环不会动,4-6秒时候开始第一套循环一套,并在6秒后面一直无限圆形循环。(如下GIF图) loopOut 3.上两例中numkeyframes的意思:numkeyframes表示循环哪些关键帧,=0表示循环所有关键帧。 ● 在loopIn中,numkeyframes=1表示前2个关键帧,=2表示前3个关键帧,以此类推。 ● 相反在loopOut中,numkeyframes=1表示最后2个关键帧,=2表示最后3个关键帧,以此类推。 也可以不写,默认是0。 4.Duration的意思:duration = 0时候一切遵循以上Out和In的基本解释。 duration = 1,这里分为两种: ● 第一种,loopInDuration(type = "cycle", duration = 1) 假设循环的关键帧设在4-6秒时候为一套动作。 duration = 1表示循环该套动作的前1秒内的动作。(如下截图,只循环红框内的关键帧) duration = 1指该套动作的一秒内动画效果如下GIF图,前4秒一直循环该动作第1-3关键帧。 loopInDuration中 duration = 1时的循环动作● 第二种,loopOutDuration(type = "cycle", duration = 1) 还是假设循环的关键帧设在4-6秒时候为一套动作。 duration = 1表示循环该套动作的最后1秒内的动作。(如下截图,只循环红框内的关键帧) duration = 1 指该套动作的最后一秒内动画效果如下GIF图,前4秒不动,4秒开始关键帧动作,并在完成后一直循环第3-5关键帧的动作 loopOutDuration中 duration = 1 时的循环动作 三、如何控制循环表达式的开始和结束时间就是用下面表达式: timeToStart = 2; timeToStop = 10; if ((time > timeToStart) && (time < timeToStop)) {loopIn(type="pingpong",numkeyframes=0);} else { value;} 使用以上表达式便可控制开始和结束时间。 timeToStart = 循环开始时间 timeToStop = 循环结束时间 其中加粗画横线的循环表达式是可以替换的,可以替换成以上任意一类型循环表达式。 因为loopOut的循环特性,所以开始时间在loopOut中为特例, 无论设为什么,他都是以循环动画的第一帧关键帧的时间为准。 loopIn相反,结束时间是最后一帧关键帧控制。 它也可以套用在其他类型的表达式上,而且为了方便可以链接用滑块控制数值。 这些以后有空写教程再讲。 教程完毕。 备注:原文链接也是我的另外一个简书账号 原创教程,原创图文,未经本人同意挪用,一律保留追究责任。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |