一、AE表达式基础 1.添加表达式:ATL单击对象 2.表达式开关 3.表达式拾取器(橡皮筋) 4.函数菜单 二、表达式规则 【属性】 位置:[X,Y] 不透明度: 50 填充颜色:[r,g,b,alpha] 缩放: 【基本计算】 a=100%3,%为取函数符号 【变量】 【语句】 【注释】 【类型】 【条件】 【循环】 【函数】 @正越升 :AE表达式一直是大家学习AE过程中的一道坎,涉及代码网上教程资源又不多,于是很多人都没有完全地领略到AE表达式的魅力。这几天我一直想写一篇《AE表达式江湖文档》。这篇文档的目的不在于全面地介绍表达式,那是官方文档才做的事情。我的目的在于尝试用直白的语言和例子阐述表达式,让不懂代码的人读完后也能看得懂AE表达式,会写AE表达式。 一直以来,大多数人都不想去碰AE的表达式,觉得和编程挂钩的东西都很难。于是我尝试着去思考怎么简单地做AE表达式的教程,让大部分人能接受。 于是,这篇非官方的来自江湖的AE表达式文档就出炉了。 江湖就有江湖的规矩。 不拘小节不刻板,不可能像官方文档一样每个函数都单独拿出来讲,官方文档是让人们当做字典查找的,我们只讲有用的,讲少一点,讲简单一点。 本文的目的不在于全面,在于力争各位读完之后,看得懂AE表达式,会写AE表达式! 表达式基础1、如何添加表达式 再深厚的功夫也是从扎马步开始的。如何添加表达式呢?两个动作。 ①按住[Alt键],②点击你要添加表达式的属性前面的[秒表]。 这个时候就会出现一个编辑框,把表达式写进去就可以啦。 示例:用表达式让[ball]的位置固定在[200, 200]处。 2、表达式开关 这个开关是[开启/关闭]表达式,可以令你在不清除表达式框的情况下,禁用表达式。 示例:表达式的开启和禁用 3、表达式拾取器 它在民间有多个名字,飘忽不定,有人说是拾取器,有人说是关联器,有人说是橡皮筋。 打个比方,你在写一篇叫做《我的同学》的作文,你的同学名字叫做沃尔塔·萨斯皮诺斯·阿卡贝斯基,你记不住,于是你用手指一指你的同学,他的名字就自动出现在你写的文章里面,多方便呀,多伟大的手指呀。表达式拾取器就是这只神奇的手指。 示例:用表达式让[ball]图层的位置位于[anotherBall]的下面50px处 4、函数菜单 AE有很多已经内置的函数给你用,你并不需要记住它们每个的名字和参数,只需要记住有这么一个函数存在就可以,需要用的时候可以在这个菜单里面搜索你想要的函数。 表达式的规则AE表达式的规则,等同于我们平日说话的时候主谓宾等语法规定,我们需要遵守,AE和你才能正常愉快地交流啊。 规则一:它要啥你就给它啥 无论你表达式写得多么长多复杂,前面一大堆,都是为了计算出最后那个AE所要求的格式的东西。 [位置]:我要的是一个格式为[x, y]的东西,我好知道我在哪个地方。 【示例】: 规则二:基本的计算 加减乘除就不用说了,在这里提一个常用的[取余数]的符号——%。 比如:a = 100 % 3; 那么a的值就是1。 【示例】: 注:[time] 是AE提供的,表示当前的时间。例如1s时,time = 1;2.5s时,time = 2.5。我们经常利用[time]的值跟随时间变化这个特性来制作动画。 规则三:变量 不要觉得[变量]这个词很陌生可怕,其实,初中开始我们的数学引入的字母,可以说就是[变量],它的作用就是来存储数值的。 【示例】: 注:[time] 是AE提供的,表示当前的时间。最后一个示例中的”time % 1”,表示当前时间对1取余数。例如time = 1.5s处,time % 1 = 0.5。因此,(time % 1) 随着时间在0~1之间不断变化。 规则四:语句 表达式是由一行一行的语句构成的,每个语句以一个分号结尾,当然AE表达式允许你忽略分号,不过在每个语句后面添加分号,是一个好的习惯。 规则五:注释 先看看下面两个表达式: 上面那个可能你一开始看到,一时半会不知道它是用来做什么的。 但是下面那个表达式,添加了作者的注释,一目了然! 有两种注释的方法:
话说回来,注释可以解释代码的作用,增加可读性,同时它不会被运行,直接被AE忽略掉。简单来说,表达式是写给AE看的,注释是写给人看的。 【示例】: 规则六:类型 在AE表达式中,变量a常见的类型有
规则七:条件 条件语句的结构其实很简单,总结来说就是: 注意: 一个if后面可以跟着无数个else if,但是只能跟着一个else,且必须在最后面。 {} 花括号后面不需要加分号。 if 和else if后面的括号里是判断的条件,常见的判断有以下: 1、a == 1 (判断a的值是不是等于1,切记是两个等于号) 【示例】: 规则八:循环 个人感觉:循环在AE表达式里面的使用其实还挺少见的(所以循环的例子好难想呀) 。 循环有三种形式,你可以根据具体情况选择任意一种。 举个例子我们看看怎么使用。 注:在循环块里面添加”break;“,表示跳出(打破)这个循环,不管循环条件满不满足,都跳出循环。 和 “break;” 类似的还有一个 “continue;” ,它表示结束本次循环,进行下次循环,而不是跳出(打破)循环。 规则九:函数 1、内置函数: 还记得那个函数菜单吗?在里面我们可以看到很多AE提供给我们使用的函数。 例如: a、wiggle(freq, amp); // [摆动]函数,freg是频率,amp是幅度 b、random(min, max); // [随机]函数,在min和max值之间取一个随机值 (更多内置常用的函数将在第四节讲解) 2、自定义函数: 个人感觉:在AE表达式中自定义函数还是比较少见的。 函数的定义格式如下: 在这里我们简单地举一个例子: 注:因为random()返回的是一个小数,所以我们自己写了一个getRandomInt(min, max)函数来返回一个随机的整数。 规则十:那些特殊的规则 1、a = a + 1; 这个语句我们可以简写为 a++; 这是在 if 和 else 都只有一个语句的时候可以采取的简写方式。 举例: 2 < 3="" a="1" :="" a="0;"> 一般我们写成 a = 2 < 3="" 1="" :="" 0;=""> 注:想完整地学习语法规则可以去runoob.com或者w3school.com.cn搜javascript的教程看。 欢迎关注作者微信公众号:坏打印机 「有哪些看上去很高大上,但实际很简单的PS技巧?」 《有哪些看上去很高大上,但实际很简单的PS技巧?》 冷知识系列第一期:《那些你不知道的PHOTOSHOP冷知识》 【优设网 原创文章 投稿邮箱:2650232288@qq.com】 ================关于优设网================ 非特殊说明,本文版权归原作者所有,转载请注明出处 AE, AE表达式, After Effect, 经验分享
|
|