第10章 表达式动画.ppt_第1页
第10章 表达式动画.ppt_第2页
第10章 表达式动画.ppt_第3页
第10章 表达式动画.ppt_第4页
第10章 表达式动画.ppt_第5页
免费预览已结束,剩余40页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,主讲教师:,AECS5.5实用教程,第10章表达式动画,本章简介本章主要讲解了表达式的基本语法和编辑表达式。表达式语法主要讲解了表达式语言、访问对象的属性和方法、数组与维数、向量与索引以及表达式时间。表达式库主要讲解了Global(全局)、VectorMath(向量数学)和RandomNumbers(随机数)等20个表达式库。,第10章表达式动画,掌握表达式的输入方法,掌握表达式的修改方法,掌握如何使用表达式制作动画,掌握表达式的基本语法,10.1基本表达式,表达式概述,编辑表达式,ExpressionControls(表达式控制)滤镜,本节内容,保存和调用表达式,虽然AfterEffects的表达式是基于JavaScript脚本语言,但是在使用表达式时并不一定要掌握JavaScript语言,因为可以使用“表达式关联器”关联表达式或复制表达式实例中的表达式语言,然后根据实际需要进行适当的数值修改即可。表达式的输入完全可以独立在“时间线”窗口中完成,也可以使用“表达式关联器”为不同的图层属性创建关联表达式,当然也可以在表达式输入框中修改表达式。,10.1.1表达式概述,10.1.2编辑表达式,在AfterEffects中,可以在表达式输入框中手动输入表达式,也可以使用表达式语言菜单来完整地输入表达式,同时也可以使用“表达式关联器”或从其他表达式实例中复制表达式。,10.1.3保存和调用表达式,在AfterEffects中,可以将含有表达式的动画保存为AnimationPresets(动画预设),在其他工程文件中就可以直接调用这些动画预设。如果在保存的动画预设中,动画属性仅包含有表达式而没有任何关键帧,那么动画预设只保存表达式的信息;如果动画属性中包含有一个或多个关键帧,那么动画预设将同时保存关键帧和表达式的信息。在同一个合成项目中,可以复制动画属性的关键帧和表达式,然后将其粘贴到其他的动画属性中,当然也可以只复制属性中的表达式。复制表达式和关键帧:如果要将一个动画属性中的表达式连同关键帧一起复制到其他的一个或多个动画属性中,这时可以在“时间线”窗口中选择源动画属性并进行复制,然后将其粘贴到其他的动画属性中。只复制表达式:如果只想将一个动画属性中的表达式(不包括关键帧)复制到其他的一个或多个动画属性中,这时可以在“时间线”窗口中选择源动画属性,然后执行Edit(编辑)/CopyExpressionOnly(只复制表达式)菜单命令,接着将其粘贴到选择的目标动画属性中即可。,10.1.4ExpressionControls(表达式控制)滤镜,如果在一个图层中应用了ExpressionControls(表达式控制)滤镜包中的滤镜,那么可以在其他的动画属性中调用该滤镜的滑块数值,这样就可以使用一个简单的控制滤镜来一次性影响其他的多个动画属性。ExpressionControls(表达式控制)滤镜包中的滤镜可以应用到任何图层中,但是最好应用到一个空物体图层中,因为这样可以将空物体图层作为一个简单的控制层,然后为其他图层的动画属性制作表达式,并将空物体图层中的控制数值作为其他图层的动画属性的表达式参考。例如为一个Null1空物体图层添加一个SliderControl(滑块控制)滤镜,然后为其他多个图层的Position(位置)动画属性应用如下所示的表达式。这样在拖曳滑块时,每个使用了以下表达式的图层都会发生位移现象,同时也可以为空物体图层制作滑块关键帧动画,并且使用了表达式的图层也会根据这些关键帧产生相应的运动效果。position+0,10*(index-1)*thisComp.layer(Null1).effect(SliderControl)(Slider),10.2表达式语法,访问对象的属性和方法,课堂案例时间之影,本节内容,向量与索引,表达式语言,数组与维数,表达式时间,课堂案例温度指示器,课堂案例光线条纹特效,课堂练习花瓣背景特效,10.2.1表达式语言,AfterEffects表达式语言是基于JavaScript1.2语言。AfterEffects使用的是JavaScript1.2语言的标准内核语言,并且在其中内嵌诸如Layer(图层)、Comp(合成)、Footage(素材)和Camera(摄影机)之类的扩展对象,这样表达式就可以访问到AfterEffects项目中的绝大多数属性值。在输入表达式时需要注意以下3点。第1点:在编写表达式时,一定要注意大小写,因为JavaScript程序语言要区分大小写。第2点:AfterEffects表达式需要使用分号作为一条语句的分行。第3点:单词间多余的空格将被忽略(字符串中的空格除外)。在AfterEffects中,如果图层属性中带有arguments(陈述)参数,则应该称该属性为method(方法);如果图层属性没有带arguments(陈述)参数,则应该称该属性为attribute(属性)。,10.2.2访问对象的属性和方法,使用表达式可以获取图层属性中的attributes(属性)和methods(方法)。AfterEffects表达式语法规定全局对象与次级对象之间必须以点号来进行分割,以说明物体之间的层级关系,同样目标与属性和方法之间也是使用点号来进行分割的。,10.2.3数组与维数,数组是一种按顺序存储一系列参数的特殊对象,它使用,(逗号)来分隔多个参数列表,并且使用(中括号)将参数列表首尾包括起来,如下所示。10,23在实际工作中,为了方便也可以为数组赋予一个变量,以便于以后调用,如下所示。myArray=10,23,10.2.4向量与索引,向量是带有方向性的一个变量或是描述空间中的点的变量。在AfterEffects中,很多属性和方法都是向量数据,例如最常用的Position(位置)属性值就是一个向量。当然并不是拥有两个以上值的数组就一定是向量,例如audioLevels虽然也是一个二维数组,返回两个数值(左声道和右声道强度值),但是它并不能称为向量,因为这两个值并不带有任何运动方向性,也不代表某个空间的位置。在AfterEffects中,有很多的方法都与向量有关,他们被归纳到VectorMath(向量数学)表达式语言菜单中。例如lookAt(fromPoint,atPoint),其中fromPoint和atPoint就是两个向量。通过lookAt(fromPoint,atPoint)方法,可以轻松地实现让摄影机或灯光盯紧某个图层的动画。在AfterEffects中,图层、滤镜和遮罩对象的索引与数组值的索引不同的,他们都是从数字1开始,例如“时间线”窗口中的第1个图层使用layer(1)来引用,而数组值的索引是从数字0开始。在通常情况下,建议用户在书写表达式时最好使用图层名称、滤镜名称和遮罩名称来进行引用,这样比使用数字序号来引用要方便很多,并且可以避免混乱和错误。因为一旦图层、滤镜或遮罩被移动了位置,表达式原来使用的数字序号就会发生改变,此时就会导致表达式的引用发生错误,如下表达式所示。Effect(Colorama).param(GetPhaseFrom)/例句1Effect(1).param(2)/例句2,10.2.5表达式时间,表达式中使用的时间指的是合成的时间,而不是指图层时间,其单位是以秒来衡量的。默认的表达式时间是当前合成的时间,它是一种绝对时间,如下所示的两个合成都是使用默认的合成时间并返回一样的时间值。thisComp.layer(1).positionthisComp.layer(1).position.valueAtTime(time)如果要使用相对时间,只需要在当前的时间参数上增加一个时间增量。例如要使时间比当前时间提前5秒,可以使用如下表达式来表达。thisComp.layer(1).position.valueAtTime(time-5)合成中的时间在经过嵌套后,表达式中默认的还是使用之前的合成时间值,而不是被嵌套后的合成时间。注意,当在新的合成中将被嵌套合成图层作为源图层时,获得的时间值为当前合成的时间。例如,如果源图层是一个被嵌套的合成,并且在当前合成中这个源图层已经被剪辑过,用户可以使用表达式来获取被嵌套合成的Position(位置)的时间值,其时间值为被嵌套合成的默认时间值,如下表达式所示。Comp(nestedcomposition).layer(1).position如果直接将源图层作为获取时间的依据,则最终获取的时间为当前合成的时间,如下表达式所示。thisComp.layer(nestedcomposition).source.layer(1).position,课堂案例时间之影,学习如何使用表达式制作钟表动画。,课堂案例温度指示器,学习如何使用Grid(栅格)滤镜制作温度计以及使用条件控制语句制作温度计动画。,课堂案例光线条纹特效,学习如何使用表达式制作光线摆动动画。,课堂练习花瓣背景特效,学习使用表达式制作Evolution(演变)动画。,10.3表达式库,VectorMath(向量数学),JavaScriptMath(脚本方法),本节内容,Interpolation(插值),Global(全局),RandomNumbers(随机数),OtherMath(其他数学),Footage(素材),LayerSub-object(图层子对象),LayerGeneral(普通图层),ColorConversion(颜色转换),Comp(合成),10.3表达式库,Layer3D(3D图层),Mask(遮罩),本节内容,Camera(摄影机),LayerProperty(图层特征),LayerSpaceTransforms(图层空间变换),Effect(滤镜),Key(关键帧),课堂案例噪波特效,课堂案例动感旋动,Light(灯光),Property(特征),10.3.1Global(全局),Global(全局)表达式用于指定表达式的全局设置。,10.3.2VectorMath(向量数学),VectorMath(向量数学)表达式包含一些矢量运算的数学函数。,10.3.3RandomNumbers(随机数),RandomNumbers(随机数)函数表达式主要用于生成随机数值。,10.3.4Interpolation(插值),展开Interpolation(插值)表达式的子菜单。,10.3.5ColorConversion(颜色转换),展开ColorConversion(颜色转换)表达式的子菜单。,10.3.6展开OtherMath(其他数学)表达式的子菜单,展开OtherMath(其他数学)表达式的子菜单。,10.3.7JavaScriptMath(脚本方法),展开JavaScriptMath(脚本方法)表达式的子菜单。,10.3.8Comp(合成),展开Comp(合成)表达式的子菜单。,10.3.9Footage(素材),展开Footage(素材)表达式的子菜单。,10.3.10LayerSub-object(图层子对象),展开LayerSub-object(图层子对象)表达式的子菜单。,10.3.11LayerGeneral(普通图层),展开LayerGeneral(普通图层)表达式的子菜单。,10.3.12LayerProperty(图层特征),展开LayerProperty(图层特征)表达式的子菜单。,10.3.13Layer3D(3D图层),展开Layer3D(3D图层)表达式的子菜单。,10.3.14LayerSpaceTransforms(图层空间变换),展开LayerSpaceTransforms(图层空间变换)表达式的子菜单。,10.3.15Camera(摄影机),展开Camera(摄影机)表达式的子菜单。,10.3.16Light(灯光),展开Light(灯光)表达式的子菜单。,10.3.17Effect(滤镜),展开Effect(滤镜)表达式的子菜单。,10.3.18Mask(遮罩),展开Mask(遮罩)表达式的子菜单。,10.3.19Property(特征),展开Property(特征)表达式的子菜单。,10.3.20Key(关键帧),展开Key(关键帧)表达式的子菜单。,课堂案例噪波特效,学习如何使用表达式制作发射特效以及使用Grid(栅格)滤镜制作网格。,课堂案例动感旋动,学习如何使用表达式制作旋转动画以及使用表达式制作色相循环动画。,10.4本章小结,本章讲解了基本表达式、表达式的基

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论