1、绘制圆环
新建一大一小两个圆,点击ADD添加Merge Path,模式旋转相减Subtract。
2、呼吸动画
正弦函数的最小周期是2π,AE里Math.sin(time*2*Math.PI)刚好让正弦函数在1秒往返一个周期,合成时间如果是4秒,则会往返4个周期:
这里因为是用作web的图形设计,需要动画在合成时间刚好一个周期,所以这里要除以合成Comp的持续时间thisComp.duration,表达式写成:
amp = 150; sin = Math.sin(time / thisComp.duration*Math.PI*2); val = value[0] + sin*amp; [val,val]
接着把小圆的动画链接过来,拾取器拾取大圆的size,后面减去一个数组,数组的大小就是圆环的宽度。
3、3D设置
一般几何选项Geometry Options是灰色,“Command/ctrl + K”调出合成设置,将3D Renderer里的Renderer改为光线追踪3D(Ray-traced 3D)。
新建摄像机,旋转到方便观察的位置(也可利用null来控制),将Gemetry Options里的Extrusion Depth(凸出深度)给一个值,比如100.
4、Z轴动画
需要一个同样是合成时间内一个正弦函数周期的动画,并且运动的偏移大小刚好是圆环的两倍厚度(乘以正弦函数1到-1的值,两个方向各一倍,刚好两倍)。
给图形层的Transform下的Positon添加表达式:
offset = geometryOption.extrusionDepth; sin = Math.sin(time/thisComp.duration*Math.PI*2); value+[0,0,sin*offset]
offset是圆环在z轴上运动的像素大小,用拾取器拾取Geometry Option 下的Extrusion Depth ,让运动的范围刚好是圆环的两倍厚度(深度)。
sin跟上面表达式一样,以所在合成的时间长短为一个周期。
这样得到的动画是圆环的上下运动和收缩运动是同步的,到最上方时候收缩到最小,运动在最下方膨胀到最大,我们把上面表达式里的time减去一个合成长度的1/4,让曲线错开1/4 。
offset = geometryOption.extrusionDepth; sin = Math.sin((time - thisComp.duration/4) / thisComp.duration*Math.PI*2); value+[0,0,sin*offset]
5、第二个环
复制圆环所在的形状图层,要实现大小环循环相套,只需要将两个个环上下运动和收缩运动相互错开。错开1/2个周期,所以,可以将其中一个圆环的size和position链接到另一个圆环,然后在后面添加“.value(time + thisComp.duration/2)”,比如:
thisComp.layer("Shape Layer 1").transform.position.valueAtTime(time + thisComp.duration/2)
或者修改两个表达式,将size后面表达式的“+”改成“-”(value[0] - sin*amp):
amp = 150;
sin = Math.sin(time / thisComp.duration*Math.PI*2);
val = value[0] - sin*amp;
[val,val]
将Position后面表达式的“-”改成“+”(time + thisComp.duration/4):
offset = geometryOption.extrusionDepth;
sin = Math.sin((time + thisComp.duration/4) / thisComp.duration*Math.PI*2);
value + [0,0,sin*offset]
6、灯光和颜色
接着是打光、调整材质、调整颜色等,按自己喜好调就行。
该文参看了@LEIZINGJIU的方法。
请登录以参与评论
现在登录