当前位置:首页 >教程首页 > After Effects >这些AE技巧,是否有种相见恨晚的感觉?

这些AE技巧,是否有种相见恨晚的感觉?

发布时间:2018-11-17 19:57:24
 
今天这篇教程主要为大家讲解一下AE使用上的小技巧,对于那些还不知道这些技巧功能的童鞋们,可以进来看看哦!
 
融球效果的制作:
 
网上流传常见的做法就是添加个Simple Choke效果的调节层,但这方法有个缺点就是会使形状的Alpha边缘收缩且模糊。日本PV师百舌谷在形状层路径讲解中有演示另一种做法,基本配置如下图:
 
 
在形状层建立两个圆形(可多个),然后添加Merge Paths(合并路径),模式为Add,再添加两个Offset Paths(偏移路径),两个模式都是Round Join(圆角连接),下面的数值为上面的相反数,然后粘连的效果就出来了,可以看到原本的形状边缘没有受到影响。
 
示范:
 
 
关于AE中的融球效果,现在我发现了三种方法:一是简单粗暴的Simple Choker调节层,二是上面的百舌谷的形状层合并偏移圆角,三是先Blur再提升Alpha通道。
 
多边形属性转换为路径:
 
直接拿图形工具画图形,比如圆,点开属性没有Path,只有Size和Position,这对做路径变形动画是不方便的:
 
 
这时可以如下图,右键转换为Path路径。(应该是CC之后版本添加的功能)或者也可以用Auto Trace将形状转换成Mask。
 
 
Mask路径和形状层路径是可以互转的:
 
一种方法是借助脚本,另一种就是点中Path属性复制,再点中另一个Path属性粘贴即可。
 
Mask和形状层的区别:
 
形状层是矢量的,而Mask不是,Mask受制于固态层的尺寸。用Mask和形状层画个一样大小的圆,然后不停放大,就能看到边缘的区别。
 
上面提到路径的互转,是因为路径信息是通用的,Path属性只能复制给Path属性,所以有时候要像上面一样将原本的形状属性转换为Path属性。
 
让物体沿着路径移动:
 
选中形状层或Mask的Path属性复制,在物体的Position属性上粘贴,物体的中心点就会沿着路径移动了。完了记得按住快捷键Ctrl+Alt+O,勾选Along Path可以让物体沿着路径变化方向。
 
 
 
使用多边形工具在创建的同时滚动滚轮,或者键盘上下键,可以即时改变附加属性,比如调整圆角矩形的圆角大小,多边形的边数,星形的角数。创建星形时按住Crtl拖动,可以拉伸角的长短。类似这样的小动作很多,可以在创建形状时按住Ctrl、Shift、Alt这几个键试试。
 
AE中的几种关键帧形态:
 
 
提示:下面都是表达式步骤,请小白注意撤退。
 
如何让一个合成Comp或素材在另一个合成中循环播放:
 
给合成或素材添加上一个Layer——Time——Time Remapping,(快捷键Ctrl+Alt+T)然后给这个属性加表达式。
 
loopOut(type="cycle", numKeyframes=0),注意Time Remap最后一个关键帧是否为空白,空白的话将关键帧提前一帧。当然视频素材的话也可以在素材属性里设置循环次数。
 
用表达式使颜色随机变化:
 
颜色属性上打:
 
seedRandom(index, 1);
 
x=random(0,1);
 
y=random(0,1);
 
z=random(0,1);
 
[x,y,z,1]。
 
(注:seedRandom()这个表达式使用的条件是下面必须有random(),一般seedRandom()是用在有多个图层,让每一个图层的某个属性的随机取值都不同,比如用在透明度上:seedRandom(index,timeless=true);换行random(0,100),复制许多层试试 。)
 
AE随机选择指定参数的表达式:
 
随机还是用seedRandom。
 
举例:seedRandom(index, timeless=true);//根据层固定取样值:color= [[1,1,1,1], [1,0,1,1],[0,0,0,1]];//定义条件(颜色是4维数组,所以定义的颜色必须在颜色表中查找出对应RGBA值加入其中)
 
colorIndex=Math.floor(random(color.length));//获取数组的长度,即里面元素的个数,并随机选出小于长度的一个数组color[colorIndex]//从这些数组中间选出一个,给表达式赋值。
 
比如我想快速得到大量的文字层并且文字的内容是指定的,那么以上表达式只要稍做修改就可以利用到这里:
 
seedRandom(index, timeless=true)
 
myText=["After Effects",
 
"Shake",
 
"Photoshop",
 
"Premiere Pro",
 
"Final Cut Pro",
 
"Motion",
 
"Fusion",
 
"NUKE",//只需编辑该组中的字串即可。
 
myIndex=Math.floor(random(myText.length));
 
myText[myIndex]在文字层的Source Text中打入以上表达,然后复制多层后就会发现文字的内容都是以上定义中随机选出的。
 
AE取整表达式:
 
Math.round()括号后面填你要取整的数,这个表达式的作用是四舍五入。还有一个Math.floor()是取小于最接近当前数字的整数;比如你用a=random(0,100);Math.round(a)得到的就是0到100之间的数字,如果把Math.round改成Math.floor就是取0到99之间的整数。
 
网上有人总结过:Floor向下取整,Ceil向上取整;Round和Rint四舍五入,取绝对值后舍入,然后加上符号,遇到.5的时候向绝对值小的方向舍之。
 
wiggle在postion只影响y轴,且为正数:[value[0],Math.abs(wiggle(f,a)[1])];通过这个例子可以看到Wiggle、只改变局部属性,取这三种表达式的用法。
 
AE表达式做抽帧:
 
1、首先为素材加入Layer->Enable Time Remapping,按Alt键点选Time Remap旁的码表,加入表达式“time*n”我用的这段是12秒,帧率为25的素材,想做成每秒一帧,这里n=25,如果每两秒一帧就要n=50了,也可以理解为每n帧抽取一帧。这样,我的12秒的素材已经变为12帧了(第12帧以后都是静帧)。
 
2、将表达式转为关健帧,全选Time Remap的关键帧,点选如图,转化关键帧。按照表达式的计算,为整个素材每帧添加了关键帧。
 
3、删掉第12帧以后的所有关键帧,选中所有关键帧按住Alt键拖动最后一帧对关键帧进行缩放,使第12个关键帧正好在12秒的位置。
 
4、将所有关键帧转为恒定值,一定记着将原有的表达式控制关掉。这时我们已经完成了一般意义上的抽帧效果,由于两个关键帧之间是被当做一帧进行计算,所以渲染速度是非常快的。这种效果中间都是硬切的,有时可能会感觉有点跳,中间加入一点叠化可能会舒服一些,《兄弟连》的片头中就是抽帧后运用了叠化。(至于它对画面进行的其它处理这里不做讨论,只进行叠化处理)
 
5、复制你刚刚做好的那段素材,上面的删掉偶数关键帧,下面的删掉奇数关键帧。
 
6、不管是上面还是下面的素材,有关键帧的地方就是一个硬切,做叠化时是要把它们“挡住”的,也就是说上面的那条素材有一个硬切,我们要使它的透明为“0”;下面那条素材有一个硬切,就要使这时上面那条的透明为“100”来挡住它。我们做的是一秒一帧,可以认为一秒就是一次循环,所以我们只处理一秒,然后用表达式做循环。至于想叠多少,就看心情了。
 
7、为透明加入表达式循环语句。
 
8、将“cycle”改为“pingpong”,所有有硬切的地方都被“挡住”了。
 
Smooth表达式的运用:
 
平滑表达式,这是可以使关键帧进行平滑效果的表达式。
 
smooth(),括号里面的默认值是0.2和5.就是smooth(0.2,5),0.2表示--每多少秒进行平滑;5表示--采样率,采样率越高越平滑。平滑表达式在跟踪素材时会常常用到。
 
Random表达式的运用:
 
随机表达式random() ,比seedRandom少一个取样。
 
random(1,10)是在1到10之间进行随机值的抽取,随机抽取的最小值是1,最大值是10。
 
[layerStyle.gradientOverlay.effect[0],random(5,15)]。
 
这句表达式的意思是在layer的gradientOverlay的第一个数值不改变,effect[0]就是代表gradientOverlay的x值,effect[1]是第二个值,即是y值。在这里x值不变,y值是random(5,15)。
 
loopOut表达式的运用:
 
循环表达式的基本格式:loopOut(type="类型",numkeyframes=0)。
 
loopOut(type="pingpong",numkeyframes=0)这是个兵乓的类型的循环,就像那样兵乓球的作用来使用。
 
loopOut(type="cycle",numkeyframes=0)这是个圆形的类型的循环,就是对一组动作进行循环。
 
loopOut(type="continue")这是计算机继续计算未完成的运动。
 
numkeyframes=0是循环的次数,0为无限循环,1是只循环一次,2是循环2次,如此类推。
 
时间表达式:
 
thisComp.layer("").transform.position.valueAtTime(time-某个数值),这个合成的某个图层的transform属性的position参数的时间延迟某个数值。如:thisComp.layer("").transform.position.valueAtTime(time-1),这句表达式的意思是这个合成的物体移动时,移动时间总是延迟1秒。
 
指数表达式:
 
如果把图层打成三维层,对Position参数填写position[0],position[1],index*2,这是你在不断复制相同的图层,图层里的图片会不断在z轴的方向以2像素的复制,最终形成厚度,达到三维物体的效果。如这个案例:用AE制作扁平化3D展示模板|GUI|,index,就是每个图层的序列号,如下图的数字:
 
 
index属性用来做阵列、有规律的动画时十分有用。
学员作品赏析
  • 2101期学员李思庭作品

    2101期学员李思庭作品

  • 2104期学员林雪茹作品

    2104期学员林雪茹作品

  • 2107期学员赵凌作品

    2107期学员赵凌作品

  • 2107期学员赵燃作品

    2107期学员赵燃作品

  • 2106期学员徐正浩作品

    2106期学员徐正浩作品

  • 2106期学员弓莉作品

    2106期学员弓莉作品

  • 2105期学员白羽新作品

    2105期学员白羽新作品

  • 2107期学员王佳蕊作品

    2107期学员王佳蕊作品

专业问题咨询

你担心的问题,火星帮你解答
×

确定