- index的使用。
- time的使用。
- 用拾取器拾取其他图层的属性。
1、绘制表盘和刻度。
新建形状层,绘制一个圆。
在12点钟方向绘制一个刻度,按Y键,将这个刻度的锚点移动到表盘的圆心。(记得打开吸附,并灵活运用参考线)
把刻度放进合成(不妨也可以,放进去为了后期修改方便),给rotation属性(旋转)写表达式:
(index - 1)*30
index表达式调取的是当前图层的序号,也就是“#”下面的数字。
这个表达式让这个代表刻度的形状层(shape layer),每一层旋转30度。复制11层,一共得到12个刻度。把所有刻度以及表盘放进一个compose(预合成)。
3、制作指针
选择方形绘制工具,按住alt/option键,以及shift键开始绘制。(按住alt/option键是为了绘制出的形状的点能够编辑,按住shift键是为了绘制正方形)。
绘制好箭头装指针后,按Y键切换工具,按住control键(吸附),将锚点移动到尾部的点上。
将指针移动到表盘上,调整好大小。随后制作另一个指针,同样移动到表盘合适位置。
4、制作动画。
先给时针加动画,给指针的rotation属性添加一个time表达式就可以。
45 + time*60
45是为了给一个初始值,让指针在0秒的时候指向12点方向。后面乘以60,可以换成其他数字,数字越大指针旋转越快。
拾取器可以拾取其他图层的属性。
打开分针的rotation属性,调出表达式面板,用拾取器拾取时针的rotation属性,然后乘以12。这样,时针每旋转30度,分钟旋转一周。
来看下拾取后自动写入的表达式:
thisComp.layer("hr.").transform.rotation
先指明合成: thisComp 这个合成
再指明图层: layer("hr.") 叫做hr.的图层
最后指明属性: transform.rotation transform(变换)属性中的rotation(旋转)属性。
注:中间用英文句号“.”隔开。
AE表达式说白了就是数值,这里调用的这个合成中“hr.”图层中rotation属性的数值。也就是说,如果时针旋转10度,数值10就被拾取器调用过来,我们再乘以12,那么这个数值就变成10*12=120,也就是分针会旋转120度。
我们可以调用相同合成中其他图层的属性,当然也可以调用其他合成的属性:
comp("Comp 2").layer("Shape Layer 1").transform.rotation
先指明和层:comp("Comp 2") 叫做Comp 2的合成
再指明图层:layer("Shape Layer 1") 叫做Shape Layer 1的图层
最后指明属性: transform.rotation 指明需要调用哪个属性的数值
Good!