表达式已经成为
高端合成软件非常重视的部分,只要有表达式的软件不管是在销售和使用方面都越来越普遍,如shake软件,它的表达式功能非常强大,许多好莱坞的制作高手都在把习惯朝shake上转。以前只有在三维软件里才有表达式,合成软件引进表达式的概念,大大方便了复杂效果的制作。After effects的表达式功能也很强,而且操作非常方便。有很多学美术的朋友一听到表达式就头痛,因表达式的使用要求十分严谨,其实after effects的表达式也不很复杂,不需要很懂数学就能使用,因此不要对它产生畏惧心理。下面来看一个使用表达式的例子。
这里有一部车的图片,车在往前开的时候,车轮的转动和路面应是咬合的。如果不用表达式来做,会很麻烦,要一遍一遍去调试,而且很难做到精确。用表达式就很简单,只要把车轮的转动和车的移动做一个关联就可以了。
先开一个com,尺寸为640*331,命名为“车”,选square pixels,这样轮子才会是圆的
1
把车的图片(hh_015.jpg)调进comp(象素长宽比要选square pixels方式),这是一个复杂的场景,有车、路面和天空,要把车单独取出来,可以用抠像,但由于这是一幅静态的图,可以勾一个mask把车分离出来。用笔工具勾出mask
2
勾mask的时候有意把前面的轮子勾掉了,后面的轮子要保留,因车的左后轮可以看到一部分,不能就此挖掉。把前轮和后轮单独挖出来,这样就多了两层,下面要使这两个轮子转起来让车运动。在挖的时候要很仔细,这里笔者是用一个正圆形来做的mask,要按住shift键来画圆,并让圆心尽可能靠近轮子的中心。做好一个轮子后复制一个,这样可以节省一点时间
3
打开轮子层(车
素材)的mask,在mask shape项上点击鼠标右键,选edit value,查看mask的信息
4
用右边的值减去左边的值就得到了mask的直径值,也就是轮子的直径,值的大小为93,这个值对下面要做的表达式很重要。
新建一个合成,命名为“合成”,尺寸为2048*576,把名为“车”的comp调进“合成”中。调进一张云彩的图片(yun.15.pic),把它放大,拉满视窗,再把车的素材图片再调进“合成”中,画一个方框mask,只留下路基部分,这时可以放大视图观看,前轮比后轮稍高一点,稍稍旋转一下,让车稳稳地落在地面上,把车移到画面左边,如图
5
下面来给车做
动画。选中“车”这一层,按p键打开position项,在第0帧处设置一个关键帧,到第4秒,把车移到画面右边,设置关键帧。为了看出这个一个真正的表达式动画,让车做不均速的运动,在中间位置再做两个关键帧,如图
下面是各关键帧点的位置。修正一下车的运动曲线,让车运动起来比较平滑而不是象撞车一样突然停止又突然启动
7
现在来把车轮的旋转和车子的位置做表达式,位移事实上等于车轮的周长,这个公式很简单:周长=2∏r。选中车轮,按r键打开旋转参数,按shift+alt+=;选中“合成”comp中的“车”,按p键打开位移参数,然后用鼠标点住旋转参数上的连接按钮拖到“车”的x轴位移参数上松开鼠标,这样就建立了一个表达式
8
仅这样连接是不够的,它在车子的位移和旋转之间建立了一个等值的关系,而实际上应该是位移值除以2∏r,在表达式后加“/(93*3.14)*360”,这样就把位移值转化成了轮子旋转的度数
9
播放观看,车轮的旋转和地面已经配合得很好了,选中另一个轮子,把刚才的表达式复制到它的旋转参数上。在使用表达式时经常会出错,这是为什么呢?如果起始点在外面,那么position值就是负值了,用表达式一算,结果也成了负值,车轮就倒着转了。为使运算结果不成负值,可以加一个数值在表达式里面,如+1000,这个数值是多大无所谓,只要使结果不为负就可以了,因为车轮转动是一个相对数值,所以绝对数的改变并不会影响到车轮转动的效果
10
轮子转起来要真实的话,还要加上motion blur,勾上这两个选项,轮子转起来很漂亮了
在做片子的时候如果想把车缩小一点,比如缩到46%,这时参数关联又出问题了。缩小后车悬在了空中,把path拉下来,让车轮贴紧地面,这个不会有问题,问题是车的移动和车轮转动不匹配了。打开车轮的旋转项,在表达式后面加一个“/”号,如图所示用鼠标拖动连接按钮到车的scale参数上,再在后面加上*100
12
现在不管把车放大还是缩小车轮和地面的关系都保持在正确的状态下。把刚才的表达式复制然后粘贴到另一个轮子的旋转参数上。新开一个comp1,尺寸是720*576pal格式,把“合成”comp拖到comp1里面去,这时可能看不到车,因“合成”comp较长,下面来做一个稳定器解决这个问题。
选中comp1中的“合成”,打开animation>motion tracker/stabilizer
13
把跟踪框放在如图所示位置,调大一点,按option按钮打开跟踪选项,把跟踪精度(subpixel match)调高,通常在1/16以上
14
按analyze开始跟踪,完成后按apply应用,回到comp1视窗,按a键打开anchor point,查看跟踪的情况,这里生成了很多关键帧点,这些点就是跟踪得来的。把comp1窗口拉大,把画面往右拖,让车位于画面的中央,并删掉前11帧的关键帧和后面几帧关键帧
15
播放观看,车子始终在画面中央跑而背景在动。
参量编辑不仅可以在位移和旋转之间关联,而且可以在完全不相干的参数之间关联。比如你想让车一边跑一边变色彩。回到“车”comp中,选中加一个hue/satuation滤镜,勾选colorizer,来给这个参数和车的位移做一个表达式
16
现在车开始一边跑一边变色,还可根据需要让色变得快一点或慢一点。现在你希望车一边跑一边变虚化,可给车加一个fast blur,然后把blurriness参数和自身的位移值关联
17
由于fast blur起作用很快,这时车已虚光了,只看到一点淡淡的影子。如果你想让车从第两秒开始虚,且不要虚得太快,先取消fast blur效果,编辑它的表达式。在两秒的时候position的x轴的值是813.7,在表达式里减去这个值,再除以50
18
播放观看,车一边开一边慢慢地虚化掉,效果很不错。各项参数值可以按你自己的需要来定,笔者这里只提供一个参考。
