查看: 1229|回复: 7
[无视] AE表达式

359

薇星辰

2

薇积分

647

精灵币

二星会员

回归会员

发表于 2017-8-29 11:58
本帖最后由 Mr.猪小﹖ 于 2017-8-29 12:15 编辑

本文转载地址:http://www.uisdc.com/useful-ae-expression-document



表达式基础

1、如何添加表达式
再深厚的功夫也是从扎马步开始的。如何添加表达式呢?两个动作。
①按住[Alt键],②点击你要添加表达式的属性前面的[秒表]。
这个时候就会出现一个编辑框,把表达式写进去就可以啦。
示例:用表达式让[ball]的位置固定在[200, 200]处。
cgwellAE表达式20 作者:Mr.猪小﹖ 帖子ID:44415

2、表达式开关
这个开关是[开启/关闭]表达式,可以令你在不清除表达式框的情况下,禁用表达式。
示例:表达式的开启和禁用
cgwellAE表达式68 作者:Mr.猪小﹖ 帖子ID:44415

3、表达式拾取器
它在民间有多个名字,飘忽不定,有人说是拾取器,有人说是关联器,有人说是橡皮筋。
打个比方,你在写一篇叫做《我的同学》的作文,你的同学名字叫做沃尔塔·萨斯皮诺斯·阿卡贝斯基,你记不住,于是你用手指一指你的同学,他的名字就自动出现在你写的文章里面,多方便呀,多伟大的手指呀。
表达式拾取器就是这只神奇的手指。
示例:用表达式让[ball]图层的位置位于[anotherBall]的下面50px处
cgwellAE表达式62 作者:Mr.猪小﹖ 帖子ID:44415

4、函数菜单
AE有很多已经内置的函数给你用,你并不需要记住它们每个的名字和参数,只需要记住有这么一个函数存在就可以,需要用的时候可以在这个菜单里面搜索你想要的函数。
cgwellAE表达式4 作者:Mr.猪小﹖ 帖子ID:44415




表达式的规则
AE表达式的规则,等同于我们平日说话的时候主谓宾等语法规定,我们需要遵守,AE和你才能正常愉快地交流啊。
规则一:它要啥你就给它啥
无论你表达式写得多么长多复杂,前面一大堆,都是为了计算出最后那个AE所要求的格式的东西。
[位置]:我要的是一个格式为[x, y]的东西,我好知道我在哪个地方。
[不透明度]:我只要一个数值就可以了,比如0,比如50,比如100。
[填充颜色]:我需要一个格式为[r, g, b, alpha]的东西,我好知道我是个啥颜色。
【示例】:
cgwellAE表达式22 作者:Mr.猪小﹖ 帖子ID:44415

规则二:基本的计算
加减乘除就不用说了,在这里提一个常用的[取余数]的符号——%
比如:a = 100 % 3;
那么a的值就是1。
【示例】:
cgwellAE表达式12 作者:Mr.猪小﹖ 帖子ID:44415
注:[time] 是AE提供的,表示当前的时间。例如1s时,time = 1;2.5s时,time = 2.5。我们经常利用[time]的值跟随时间变化这个特性来制作动画。

规则三:变量
cgwellAE表达式97 作者:Mr.猪小﹖ 帖子ID:44415
不要觉得[变量]这个词很陌生可怕,其实,初中开始我们的数学引入的字母,可以说就是[变量],它的作用就是来存储数值的。
【示例】:
cgwellAE表达式46 作者:Mr.猪小﹖ 帖子ID:44415
注:[time] 是AE提供的,表示当前的时间。最后一个示例中的”time % 1”,表示当前时间对1取余数。例如time = 1.5s处,time % 1 = 0.5。因此,(time % 1) 随着时间在0~1之间不断变化。

规则四:语句
表达式是由一行一行的语句构成的,每个语句以一个分号结尾,当然AE表达式允许你忽略分号,不过在每个语句后面添加分号,是一个好的习惯。

规则五:注释
先看看下面两个表达式:
cgwellAE表达式75 作者:Mr.猪小﹖ 帖子ID:44415
上面那个可能你一开始看到,一时半会不知道它是用来做什么的。
但是下面那个表达式,添加了作者的注释,一目了然!

有两种注释的方法:
  • 单行注释:两个斜杠 // 可以注释掉同一行后面的所有内容。
  • 多行注释:可以用 /* 和 */ 把要注释的内容括起来,这种方式可以注释多行内容。
]话说回来,注释可以解释代码的作用,增加可读性,同时它不会被运行,直接被AE忽略掉。简单来说,表达式是写给AE看的,注释是写给人看的。
【示例】:
cgwellAE表达式98 作者:Mr.猪小﹖ 帖子ID:44415

规则六:类型
   在AE表达式中,变量a常见的类型有
  • 数值。例如数字1、1.5、-10。
  • 字符串。用引号包括起来,例如一个字符串”哈喽你好呀”、”我在写文档ing” 。
  • 布尔值。判断对错的布尔类型 true 和 false 。
  • 数组。由许多元素组成的一个组。
cgwellAE表达式22 作者:Mr.猪小﹖ 帖子ID:44415


规则七:条件
条件语句的结构其实很简单,总结来说就是:
cgwellAE表达式45 作者:Mr.猪小﹖ 帖子ID:44415
注意:
一个if后面可以跟着无数个else if,但是只能跟着一个else,且必须在最后面。
{} 花括号后面不需要加分号。
if 和else if后面的括号里是判断的条件,常见的判断有以下:
1、a == 1 (判断a的值是不是等于1,切记是两个等于号)
2、a >= b (判断a的值是不是大于等于b)
3、 !(3 > 1) (!表示取反,因为3>1是true,所以取反之后这个条件是false)
4、flag (判断flag是布尔值true还是false)
5、0 (当判断条件是0,则表示false,若是0以外的其他数字,则表示true)
【示例】:
cgwellAE表达式54 作者:Mr.猪小﹖ 帖子ID:44415


规则八:循环
个人感觉:循环在AE表达式里面的使用其实还挺少见的(所以循环的例子好难想呀) 。
循环有三种形式,你可以根据具体情况选择任意一种。
cgwellAE表达式88 作者:Mr.猪小﹖ 帖子ID:44415

举个例子我们看看怎么使用。

cgwellAE表达式88 作者:Mr.猪小﹖ 帖子ID:44415
注:在循环块里面添加”break;“,表示跳出(打破)这个循环,不管循环条件满不满足,都跳出循环。
和 “break;” 类似的还有一个 “continue;” ,它表示结束本次循环,进行下次循环,而不是跳出(打破)循环。

规则九:函数
1、内置函数:
还记得那个函数菜单吗?在里面我们可以看到很多AE提供给我们使用的函数。
例如:
a、wiggle(freq, amp);  // [摆动]函数,freg是频率,amp是幅度
b、random(min, max);  // [随机]函数,在min和max值之间取一个随机值 (更多内置常用的函数将在第四节讲解)
cgwellAE表达式56 作者:Mr.猪小﹖ 帖子ID:44415

2、自定义函数:
个人感觉:在AE表达式中自定义函数还是比较少见的。
函数的定义格式如下:
cgwellAE表达式9 作者:Mr.猪小﹖ 帖子ID:44415


在这里我们简单地举一个例子:
cgwellAE表达式85 作者:Mr.猪小﹖ 帖子ID:44415
注:因为random()返回的是一个小数,所以我们自己写了一个getRandomInt(min, max)函数来返回一个随机的整数。
规则十:那些特殊的规则
1、a = a + 1; 这个语句我们可以简写为 a++;
2、同理,a = a – 1; 我们可以简写为 a–;
3、条件语句还有一种写法:condition ? do somthing : or do something;
这是在 if 和 else 都只有一个语句的时候可以采取的简写方式。
举例: 2 < 3 ? a = 1 : a = 0; // a的值为1
一般我们写成 a = 2 < 3 ? 1 : 0; // a的值为1







上一篇:有没有unity的大神
下一篇:测试

505

薇星辰

12

薇积分

925

精灵币

三星会员

发表于 2017-8-29 14:29
学习力,好厉害
http://file.cgwell.com/forum/201807/27/183010c98bb2sb8dzrx5x9.gif

3

薇星辰

0

薇积分

17

精灵币

见习会员

发表于 2017-9-13 15:46
感谢分享~

441

薇星辰

33

薇积分

1618

精灵币

三星会员

CGwell游戏特效01期学员一年相伴 感谢有你二年相伴 感谢有你薇儿被上了100天CGwell游戏特效04期学员

发表于 2017-9-1 15:37



感谢大佬

809

薇星辰

42

薇积分

798

精灵币

三星会员

CGwell游戏特效01期学员薇儿被上了100天

发表于 2017-8-29 16:33
感谢分享

843

薇星辰

44

薇积分

2389

精灵币

三星会员

CGwell游戏特效01期学员CGwell游戏特效04期学员一年相伴 感谢有你薇儿被上了100天二年相伴 感谢有你

发表于 2017-8-29 18:45
我饿了

55

薇星辰

-4

薇积分

1546

精灵币

二星会员

发表于 2017-8-29 13:41
学习了,好叼。

2

薇星辰

0

薇积分

193

精灵币

一星会员

回归会员

发表于 2017-8-29 14:45
不错,多谢分享
您需要登录后才可以回帖 登录 | 普通注册

本版积分规则 回复 诸如“sadasdasf”“撒旦撒旦撒范围为” 将被直接禁言 快捷回复内容选择:

CG薇儿热门讨论X

近日有些会员无法登陆网站

近日有些会员无法登陆网站,系网站登陆模块有bug,请暂时切换为IE内核的浏览器登陆,这个兼容问题会努力修复...

参加讨论查看详情
快速回复 返回列表 客服中心
快速回复 返回顶部 返回列表