Ae表达式该如何使用【进阶案例1】
上次讲了最基础的ae表达式,希望大家多看几遍多背,如果只是记了记看了看作用也不大,应该结合实际的应用把他们用起来,接下来我会更新一些表达式的实际案例,分享一下我个人对表达式的一些小心得,方便大家学习的同时,日后我也好回来温故知新。
本期用ae表达式结合之前的表达式基础中:
1.Math.sin()
2.Wiggle()
3.time
4.滑块控制简单应用;
一起看看如何制作蝴蝶飞舞的效果
在看下面之前,想想如果上期的文章最全的ae表达式教学分享(实用!)表达式其实很简单看懂了,看着这个动画能想到怎么做吗?可以的话试做一下。
素材可以去“花瓣”下载,上面很多免费的各类素材。
思考完以后,下面看看怎么做的,碰撞下思维。
1.布置摆放好翅膀图层
将蝴蝶左右翅膀分开,打开各自的三维开关。并且新建两个翅膀的控制图层。(此处控制图层的作用呢我是通过控制图层去控制两个翅膀,当然直接在两个翅膀建立表达式也是可以的)
2. 新建滑块控制,作为蝴蝶翅膀飘动的控制
选中控制图层然后新建菜单栏-效果-表达式控制-滑块控制,使用滑块控制效果。
3.实现控制
打开两个翅膀图层的y轴旋转属性,按alt鼠标左键点击激活表达式控制(点击k关键帧的地方),选中将两个翅膀y轴属性表达式的小酒窝,拖拽赋予给滑块控制再松开鼠标左键。
此时“蝴蝶翅膀左边”y轴属性下表达式就变成了:
thisComp.layer("NULLCONTROL").effect("滑块控制")("滑块")
这个表达式解释为:
“蝴蝶翅膀左边”图层的Y轴旋转属性的数值被这个名字叫“NULLCONTROL”的图层上面的滑块效果的数值控制。
另外一个右边的翅膀同样操作,一样的道理。
只不过这时候需要两个翅膀煽动的方向是相反的,所以
此时“蝴蝶翅膀右边”y轴属性下表达式就变成了:
thisComp.layer("NULLCONTROL").effect("滑块控制")("滑块")*(-1)
注意此时让右边翅膀整个表达式*(-1)这样两个翅膀会朝相反的方向运动,蝴蝶就可以通过滑块控制扇翅膀了。
4. 实现飞舞
在滑块控制按alt激活表达式,输入Math.sin(time*8)*70;
通过sin函数和time函数去控制蝴蝶煽动翅膀的频率。此处注意,这个“8”是控制翅膀煽动的快慢,数值越大越快;“70”是控制翅膀煽动幅度。
结合sin函数的属性特性去理解,不懂的可以回去看这篇文章。
此时播放蝴蝶就会自动飞舞了。
做到这里已经会煽动翅膀
5. 这里我想通过滑块去控制蝴蝶的频率,所以我选中8,然后把表达式链接给一个新建的滑块控制。
此时表达式自动变成如图所示,通过滑块2控制就可以比较方便的调节蝴蝶翅膀。
6. 将这三个图层Ctrl+shilt+Y预合成。
此操作是为了方便旋转蝴蝶,做成立体效果。
7.打开预合成如图所示的两个开关。
第二个开关是保持合成内部的图层的三维属性,这样我们再旋转合成的时候,蝴蝶就是立体的了。再调节好蝴蝶的方向。
8. 对合成的位置展开单独尺寸,单独编辑x,y的值;
Y:让她实现上下飞舞,wiggle(4,100),也可以使用Math.sin()函数。
X:从左往右k两个关键帧
剩下的就是自己需求对蝴蝶进行的微妙调节了。以上就是今天简单的蝴蝶飞舞教程啦,是不是很简单~
这个案例是通过运用几个简单的表达式,替代庸杂的关键帧实现的一些按照规律循环性的动画,如果你get到这个点,那你就大概领悟了表达式的用处,它就是体现在这个地方,所以并不是说表达式很难可学可不学,表达式如果学了就类似于锦上添花,如何学表达式呢?
我建议是并不用花专门的某短时间去学习它,有空看看我分享的文章,我会把一些技巧和我总结性的东西分享出来给大家,地铁上,马桶上,有空看看,记一记。
这是我手机的屏锁,之前换了一直没有换过来,把自己觉得可能用得上的表达式记熟,好过你背好一大堆的表达式用时无从下手。
分享其实是为了记录我生活中所收获学习到东西的总结,大家一起成长,希望后期这条路上,更多人不迷茫,更多人能够找到自己的导师。
更多教程干货,欢迎关注微信公众号“小仓鼠爱后期”
我是后期仓鼠菌
我:加油!