AE表达式一直是大家学习AE过程中的一道坎,涉及代码网上教程资源又不多,于是很多人都没有完全地领略到AE表达式的魅力。于是这一次,我花了大量时间学习研究同时结合自己以往在工作中对表达式的运用心得。为大家带来这套系统的表达式教学。在学习表达式之前我们需要对表达式有个基本的了解。首先我们需要排除一个想法,表达式真的像我们想象的那么难学吗?答案是否定的!其实表达式并不像我们想象的那样复杂,它比真正意义上的编程要简单很多。我们只需要了解一些表达式的规则,以及一些常用表达式的命令,我们就足以应付工作中遇到的所有表达式的问题,你同样可以使用表达式制作一些非常酷的效果。所以通过这篇文章我们先来简单的了解一下AE表达式的一些规则,包括一些常用的表达式命令,我这里做个简单的讲解。
1.什么是表达式?
我们首先要对表达式有个了解:表达式是AE内部基于Java s cript编程语言开发的编辑工具。
表达式的语法及命令都是源自JS这门语言,如果有对JS语言熟悉的朋友,使用AE里面的表达式的话就会非常轻松。虽然说表达式都是基于JS语言的,但表达式要比正在使用JS语言开发要简单的多得多,大家可以把它看作一个简化版的编程过程。
2.在学习表达式之前我们首先明白这两点
(1)所有的表达式只可以添加在AE里面的可编辑动画关建帧的属性上
在AE里面表达式只可以输入在可编辑关键帧的属性上,比如位置,旋转,缩放等......所以我们使用表达式的目的是对一些动画属性进行控制,从而提高我们的工作效率或者制作出更棒的动画效果!
(2)并不是所有地方都需要表达式,我们要根据需求选择使用关键帧或者表达式
在AE里面并不是任何时候使用表达式都比关键帧要方便,有的时候关键帧的效果或者效率反而比表达式更好更快。所以大家要根据不同的效果选择打关键帧或者表达式,或者两者的结合。我们最终的目的还是最后的效果。
3.如何在AE中添加表达式
我们首先了解一下如何在AE里面添加表达式
正如我上面所说,表达式只可以输入在可编辑关键帧的属性上。任何一个AE里面可以打关键帧的属性前面都有一个小码表,也就是我们打关键帧需要点击的那个小码表。我们只需要按住键盘上的ALT键+鼠标左键点击这个小码表,就可以调出对应属性的表达式输入框。我们需要做的就是在输入框内输入表达式即可
![](http://hiphotos.baidu.com/feed/pic/item/810a19d8bc3eb1359b3e7895aa1ea8d3fd1f4427.jpg)
4.表达式工具
我们按住ALT+鼠标左键点击属性前面的小码表除了调出表达式输入框之外,还会调出表达式的工具。
表达式工具从左往右依次是:表达式开关、表达式图表、拉索工具、表达式语言菜单
1、表达式开关:打开或者关闭表达式效果
![](http://hiphotos.baidu.com/feed/pic/item/86d6277f9e2f07083ae1e52ee524b899a901f23c.jpg)
2、表达式图表:查看表达式数据变化曲线
![](http://hiphotos.baidu.com/feed/pic/item/b999a9014c086e06042af0650e087bf40ad1cb1a.jpg)
3、拉索工具:链接属性用于表达式
![](http://hiphotos.baidu.com/feed/pic/item/c2cec3fdfc03924511692e218b94a4c27c1e25c4.jpg)
4、语言菜单:调用AE内置表达式函数命令
![](http://hiphotos.baidu.com/feed/pic/item/eaf81a4c510fd9f99ff69a47292dd42a2834a43f.jpg)
5.表达式书写的一些规则
(1)针对不同属性,表达式最终输出的是不同的数据类型
在AE里面不同的属性的参数是不一样的,大致可以分为4种:单个数值、数组、布尔值、字符串
数值和数组
我们最常使用的就是单个数值和数组,我们来了解一下单个数值和数组的区别。
![](/static/kindeditor/attached/image/20210716/20210716153443_84920.png)
由上图可见单个数值和数组的区别,我们最常调节的就是单个数值。但是在AE里面的很多属性它其实是由多个数值组成的,我们把这种多个数值组成的数据类型叫做数组
布尔值和字符串
布尔值主要是起开关作用的,它主要就是两个值:true和false,true代表“真”、false代表“假”。可以用数值0和1代表:0代表假、1代表真
字符串不太常用,我们做个简单了解,它主要是针对文本工具的:如“你好”(字符串需要用双引号“”括起来,双引号里面你可以填任何信息,中文、英文或者数字都可以,但它只是字符的意义)
(2)数组的书写格式
上文提到数组是由多个数值组成的,所以数组的书写格式如:[10,10]
数组需要使用中括号[]括起来,中括号里面你可以填多个数值(要填几个数值取决于对应的属性),每一个数值之间用逗号隔开
6.变量的使用
在AE表达式书写的时候,并不是我们书写的所有内容表达式都能识别。表达式一般能识别的就是表达式内部的一些函数命令,我们可以直接在“表达式语言菜单”中调用。除了内部的一些函数命令外,表达式还可以识别我们外部自定义的变量
(1)什么是变量?
变量是我们用来存储数值用的,你可以把它当做一个容器。
比如:a=100
我们就把100这个数值存储在a里面,则a这个时候就是一个变量
变量需要使用等于号“=”来进行赋值
你可以使用任何单词作为变量,字母a也好、字母b也好、单词也好、或者汉语拼音都可以,但是不能使用中文
7.表达式内置的函数命令
上面说道AE表达式只能够识别内置的函数命令和自定义的变量。
内置的函数命令就是我们最常使用的一些代码了,我们直接可以在AE表达式工具里面的“表达式语言菜单”里面进行调用
![](http://hiphotos.baidu.com/feed/pic/item/54fbb2fb43166d227df7daba4a2309f79052d218.jpg)
表达式语言菜单里面包含了所有我们书写表达式需要用到的函数命令。