本文介绍本人压箱底的AE技能:背景发光
本文实际上介绍的是Light warp(日光束)的进阶技巧,文中统称为背景发光
Light warp(日光束)效果对静止系Mad的加成非常巨大,如下两图
应用前:
应用后:
现状
然而,在AE常用的Light warp插件大都不支持64位, 已经和数千插件一起埋葬在AE CS4版本中了.
但是,日光束的效果已经强大到了不可能被放弃的地步,因此已经有很多讨论,其中最有价值的则是三年前"团神"的内置插件做法
缺点
如果读者现在按照上图的做法做了,那么会很容易发现,这种日光束有一个非常巨大的缺陷:
移动人物图层时, 日光束效果在人物上面产生的像素并没有移动
也就是说,这种做法实际上只适用于单帧,一旦涉及时间线上的位置改变, 不可移动这样的瑕疵会很容易被观众注意到
实际上,所有Light warp插件全部都有这种缺点, 原因在于, 插件拾取到的图层像素是永远固定的,并不会因为图层的移动而有所改变
Timeline是AE最重要的一个概念,如果只应用于单帧,为什么不用AI和PS呢?因此,有必要在静帧的基础上做出改良
改良后的日光束:背景发光
日光束经过改良后的效果,我称之为背景发光,意指"根据所处位置的背景进行发光处理"
我们可以通过预合成的方式,将背景图层进行预合成,再利用表达式,将背景图层的位置与人物图层的位置进行链接.一旦人物移动,预合成中的背景图层则根据表达式以相反方向移动相同距离, 这样插件拾取到的预合成的像素将"正好"是移动后的像素.
第一步,准备环境
首先建立合成,命名为"mainComp"
再导入背景图层和人物图层,背景图层命名为"background",人物图层命名为"character"
为了方便演示,首先将背景图层和人物图层都对齐到左上角,这里利用的是AE的对齐面板(Align)
预合成人物图层,预合成名称同样设置为"character"
复制背景图层,将复制得到的图层进行预合成,名称设置为"background",完成后再点暗此预合成
第二步,应用日光束特效
按照本文中团神的内置插件做法,为人物预合成添加日光束特效,其中Compound Arithmetic
的Second Source Layer
应当指向背景预合成
第三步,为背景应用表达式
来到背景预合成中,为背景的position属性打上如下表达式:
var targetLayer=comp("mainComp").layer("character");
value-targetLayer.transform.position+[comp("character").width/2,comp("character").height/2];
表达式中之所以要加上[comp("character").width/2,comp("character").height/2]
,是为了校正移动后的中心点.
现在,背景发光就做完了,下图是最终效果,用来展示本文的最终目标:背景发光
结语
背景发光并不是一个孤立的特效,例如,如果点暗掉最后一个CC Composite
,那么效果如下图
这就是背景发光真正产生的像素,在这些像素的基础上,即使简单地添加一些澡波插件进行叠加,都能够很容易地做出鳞次栉比的光线闪烁效果