AE循环表达式是在动画和特效制作中广泛使用的一种技术,它能够极大地减少工作量并提高效率。
在动画制作中,循环表达式可以应用于植物、头发、肢体摇摆、灯光闪烁等方面,通过循环的动态效果,使得这些元素在画面中更加生动、自然。
对于植物的动画效果,可以使用循环表达式实现树枝的摆动、叶子的飘动等,使得植物的动画更加逼真。
在头发的动画制作中,循环表达式可以应用于头发的飘动、晃动等,使头发的动画更加自然流畅。
对于肢体的动画效果,循环表达式可以用来控制肢体的摆动、晃动,增加肢体的活力和真实感。
在灯光闪烁的效果制作中,循环表达式可以用来实现灯光的周期性闪烁,创造出各种闪烁的节奏和效果。
此外,在MG动画制作中,循环表达式也被广泛应用,用于创建循环的图形、粒子效果以及其他复杂的动画效果。
一、AE中4种循环表达式,分别是:
-
loopIn(type = "cycle", numKeyframes = 0)
-
loopOut(type = "cycle", numKeyframes = 0)
-
loopInDuration(type = "cycle", duration = 0)
-
loopOutDuration(type = "cycle", duration = 0)
二、 4种循环表达式的相同之处
1、type的4种不同的循环类型"cycle/pingpong/offset/continue”使用相同;
-
Cycle://从头开始一直循环范围内的动画帧。
-
Pingpong://类似乒乓球,来回循环范围内的动画帧。
-
Offset://以上一次循环结束的状态开始下一个循环。
-
Continue://一直持续循环结束时的状态
2、循环类型的含义
类型一、无限循环【type = "cycle"】
“cycle”是个圆形的类型的循环,就是对一组动作进行循环。
【loopIn】来举例
loopIn(type = "cycle", numKeyframes = 0)
【loopOut】来举例
loopOut(type = "cycle", numKeyframes = 0)
从关键帧结束点向后循环关键帧的动画,如分别为a、b、c这三个关键帧。而它的循环模式则是关键帧结束点开始向后循环 abc、abc、abc.......(反复循环到出点)
类型二、来回循环【type = "pingpong"】
【loopIn】来举例
loopIn(type="pingpong",numkeyframes=0)
“pingpong”循环,它的功能类似于乒乓球的来回反弹。
则关键帧开始向前到入点循环关键帧的动画,如分别为a、b、c这三个关键帧。而它的循环模式则是关键帧开始向后循环 abc、cba、abc......(反复循环到出点)
类型三、偏移循环【type="Offset"】
【loopIn】来举例
loopIn(type="Offset",numkeyframes=0)
“Offset”根据关键帧的位置信息计算出后续动画的偏移值,用于从而影响运动轨迹。(如:上梯子,做一个动作,可自动循环后面上梯子的动作)
则关键帧开始向前到入点循环关键帧的动画,如分别为a、b、c这三个关键帧。而它的循环模式是abcdefg.....直至运动到合成画面外不可见。
类型四、持续循环【type="continue"】
【loopIn】来举例
loopIn(type="continue")
则关键帧开始向前到入点循环关键帧的动画,如分别为1、2、3这三个关键帧。而它的循环模式是-3+n、-3、-2、-1、1、2、3直至运动到合成画面外不可见。
三、In和Out的区别,numkeyframes和Duration区别
1、loopIn的含义:
例:loopIn(type="cycle",numkeyframes=0)
【loopIn】:关键帧开始向前到入点循环关键帧的动画
- 在时间轴中,选择一个关键帧作为起始关键帧。
- 在该关键帧上应用"loopIn"表达式。
这样,该关键帧之前的关键帧将被复制并循环播放,形成一个无限循环的动画效果。
需要注意的是,"loopIn"表达式还可以附加其他参数来自定义循环的方式。例如,你可以使用"loopIn(type = “pingpong”)"来实现来回循环播放。
2.loopOut的含义:
例:loopOut(type="cycle",numkeyframes=0)
【loopOut】:从关键帧结束点向后循环关键帧的动画,
- 在时间轴中,将一个关键帧设置为终止关键帧。
- 在该关键帧上应用"loopOut"表达式。
这样,在该关键帧之后的关键帧将被复制并循环播放,从而形成一个无限循环的动画效果。
需要注意的是,"loopOut"表达式可以根据需要进行进一步的调整,以支持不同的循环方式和方式。例如,你可以使用"loopOut(type = “pingpong”)"来实现来回循环播放。还有其他参数和选项可以用于定制循环的行为。
3、numkeyframes的含义:
例:loopOut(type="cycle",numkeyframes=0)
numkeyframes表示循环哪些关键帧,=0表示循环所有关键帧。
● 在loopIn中,numkeyframes=1表示前2个关键帧,=2表示前3个关键帧,以此类推。
● 相反在loopOut中,numkeyframes=1表示最后2个关键帧,=2表示最后3个关键帧,以此类推。
在实际使用中,也可以不写。默认的的值是0。
4.Duration的含义:
例:loopInDuration ( type = "cycle", duration = 0 )
duration = 0时候一切遵循以上Out和In的基本解释。
duration = 1,这里分为两种:
第一种、loopInDuration(type = "cycle", duration = 1)
duration = 1表示循环该套动作的前1秒内的动作。
解释:在当前关键帧开始循环播放,循环的类型为 “cycle”,循环的持续时间为 1 秒。
参数说明:
- “type”:循环的类型。可选的值包括 “cycle”、“pingpong”、“continue” 等,默认为 “cycle”。
- “duration”:循环的持续时间。单位可以是帧数或秒数,默认为 1 秒。
第二种、loopInDuration(type = "cycle", duration = 1)
duration = 1表示循环该套动作的最后1秒内的动作。
解释:在当前关键帧结束后循环播放,循环的类型为 “cycle”,循环的持续时间为 1 秒。
参数说明:
- “type”:循环的类型。可选的值包括 “cycle”、“pingpong”、“continue” 等,默认为 “cycle”。
- “duration”:循环的持续时间。单位可以是帧数或秒数,默认为 1 秒。
四、如何控制循环表达式的开始和结束时间
示例:
timeToStart = 2; // 循环开始时间 timeToStop = 10; // 循环结束时间 if ((time > timeToStart) && (time < timeToStop)) { loopOut(type="Offset",numkeyframes=0); // 在指定的时间范围内循环播放(Offset方式) } else { value; // 不在指定的时间范围内,保持原始值 }
这段代码的逻辑是检查当前时间是否在指定的时间范围内。
如果在开始时间和结束时间之间,则应用循环表达式 loopOut(type="Offset",numkeyframes=0)
来循环播放关键帧(Offset方式)。
如果不在指定的时间范围内,则保持原始值不做循环处理。代码中的 time
是 AE 的内置全局变量,表示当前时间。
可以根据需要修改 timeToStart
和 timeToStop
的值来定义你想要的循环开始和结束时间。
同时,也可以根据需要更改循环的类型和循环次数等参数。
五、AE循环表达式使用参照表
1、loopIn ( type = "cycle", numKeyframe = 0 )
loopIn(type = "cycle/pingpong/offset/continue", numKeyframes = 0) loopIn://向前循环动画帧 Type://循环的类型 Cycle://从头开始一直循环范围内的动画帧 Pingpong://向乒乓球一样,来回循环范围内的动画帧 Offset://以上个循环结束的状态开始下一个循环 Continue://一直持续循环结束时的状态 numKeyframes://确定循环的帧数,为0时,默认循环所有的帧;Continue没有第二个参数
2、loopOut ( type = "cycle", numKeyframe = 0 )
loopOut(type = "cycle/pingpong/offset/continue", numKeyframes = 0) loopout://向后循环动画帧 Type://循环的类型 Cycle://从头开始一直循环范围内的动画帧 Pingpong://向乒乓球一样,来回循环范围内的动画帧 Offset://以上个循环结束的状态开始下一个循环 Continue://一直持续循环结束时的状态 numKeyframes://确定循环的帧数,为0时,默认循环所有的帧;Continue没有第二个参数
3、loopInDuration ( type = "cycle", duration = 0 )
loopInDuration(type = "cycle/pingpong/offset/continue", duration = 0) loopIn://向前循环动画时间 Type://循环的类型 Cycle://从头开始一直循环范围内的动画时间 Pingpong://向乒乓球一样,来回循环范围内的动画时间 Offset://以上个循环结束的状态开始下一个循环 Continue://一直持续循环结束时的状态 duration://确定循环的帧数,为0时,默认循环从0开始到结束帧的所有的时间;Continue没有第二个参数
4、loopOutDuration ( type = "cycle", duration = 0 )
loopOutDuration(type = "cycle/pingpong/offset/continue", duration = 0) loopout://向后循环动画时间 Type://循环的类型 Cycle://从头开始一直循环范围内的动画时间 Pingpong://向乒乓球一样,来回循环范围内的动画时间 Offset://以上个循环结束的状态开始下一个循环 Continue://一直持续循环结束时的状态 duration://确定循环的帧数,为0时,默认循环从0开始到结束帧的所有的时间;Continue没有第二个参数
原创整理教程,分享请注明出处!!!
本博客站旨在督促自己学习总结经验,分享知识,提供的软件、插件等相关资源仅供学习交流之用。
本博客站分享的部分内容来源于网络,旨在分享交流学习,版权为原作者所有。
本站提供的资源仅供日常使用和研究,不得用于任何商业用途。如发现本站软件素材侵犯了您的权益,请附上版权证明联系站长删除,谢谢!
根据二oo二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可不经软件著作权人许可,无需向其支付报酬!鉴此,也望大家转载请注明来源! 下载本站资源或软件试用后请24小时内删除,因下载本站资源或软件造成的损失,由使用者本人承担! 本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请邮件通知我们,我们会及时删除。 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。
转载请注明出处>>AE教程笔记 » AE循环的表达式有哪些?该怎么使用?AE循环表达式使用教程