A. AE的这里的脚本都是怎么用的就截图里这些,想找教程又不知道怎么搜索
这些是AE的表达式名称,你可以找找AE表达式的教程。
B. AE表达式和脚本常用的函数是什么
1,时间
AE表达式和脚本常用的函数是什么?时间随时间线变化,值也随之变化,时间=1秒1,时间=1秒1.5。当时间的值变化时,我们可以使表达式随时间变化。(使用分形噪声,你可以很好地看到这个时间表达式的渲染效果。)
2,该指数
AE表达式和脚本中的不同层都有自己的索引。我们可以根据不同的层次做出不同的效果。
3、价值
不带表达式的此属性的当前值。在下面的图中,将value表达式添加到当前值,以表示x+10 y+20是其原始值的值。
4、wiggle(频率,amp)
AE表达式和脚本常用的函数是什么?Swing函数(感觉经常使用helper)。有两个参数。第一个频率是振荡频率,第二个安培是振荡振幅。这是一个非常有用的表达式,也是一个基本表达式。
5、随机
AE表达式和脚本常用的函数是什么?这是一个随机函数。通过调用random(),我们得到一个介于0和1之间的随机值。然后我们可以用随机值来产生各种随机效果。
6, valueAtTime (t)
这也是一种常见的AE表达式和脚本。调用此函数以获得相应的时间值。
7, loopOut
循环功能。如果您希望创建一个来回移动的球,但不想重复K帧,请记住这个表达式:只创建一个来回移动的关键帧,并添加loopout()函数。
以上就是《影视后期课堂:AE表达式和脚本常用的函数有哪些?》的主要内容,如果你想了解影视后期的基本知识,并且将他们运用到您的作品中,那么本文一定会给你有效的帮助。如果你想学习更多关于影视后期的知识或资讯等,可以点击本站的其他文章进行学习。
C. AE里输入表达式提示函数loopOut未定义无效表达怎么回事
你是不是参数写错了
loopOut表达式的运用:
循环表达式
基本格式:loopOut(type="类型",numkeyframes=0)
loopOut(type="pingpong",numkeyframes=0)这是个兵乓的类型的循环,就像那样兵乓球的作用来使用。
loopOut(type="cycle",numkeyframes=0)这是个圆形的类型的循环,就是对一组动作进行循环。
loopOut(type="continue")这是计算机继续计算未完成的运动。
numkeyframes=0是循环的次数,0为无限循环,1是只循环一次,2是循环2次,如此类推。
D. 怎样使AE做出来的swf文件在播放的时候能够一直循环 貌似AE导出来的跟flash导出来的不一样好象不会循环
swf文件是支持脚本控制的,一般软件都可以使swf播放到最后一帧后跳转至第一帧。在ae里面ctrl+m导出的界面里,把预置的参数项改选为custom(自定义),当你选择导出格式为swf的时候,界面下方不是有一个to
move
in
circles,(也可能我记错了不是这么写),但这个界面下,有一个勾选是否循环播放的选项,ae默认是没有勾选的所以你导出来播放它不会循环,勾上它就可以了。
E. AE怎么用wiggle(2,20)循环播放素材
按住alt点击需要添加这个表达式的属性前一个像码表的东西,然后就可以输入表达式,把这个
wiggle(2,20}复制进去就行。
我们经常在AE里制作文字特效,运用好表达式能获得很震憾的效果,wiggle表达式使用率超高!
下面是wiggle祥细解说,大家一定能很快理解的。
函数:
- wiggle(freq, amp, octaves = 1, amp_mult = .5, t = time)
参数:
- freq 频率
- amp 振幅
- octaves 振幅幅度
- amp_mult 频率倍频
- t 持续时间
说明:
频率和振幅是必须具备的参数其他选填写
例如wiggle(50,100)
实例:
- 打开AE CS4
- 新建工程
- 新建合成
- 使用文字工具 Ctrl+T 在合成内输入文字
- 给文字层应用动画预设(菜单 - 动画 - 应用动画预设)
(..\Adobe\Adobe After Effects CS4\Support Files\Presets\Transform\Separate XYZ Position.ffx)
- 查看控制效果 F3 (XYZ位置分离()
- 按住ALT键点击该效果Y轴关键贞记录按钮(时钟图标)
- 在表达式处输入:wiggle(50,100)
- 播放,预览效果(这时已经可以看见通过wiggle函数,文字在不停的颤动)
- 给文字层添加效果(表达式控制 - 滑动控制)
- 将(XYZ位置分离)中Y轴上表达式改为
str=effect(”滑动控制”)(”滑动”)
wiggle(50,str)
- 此时可以通过”滑动控制”中的滑杆控制文字Y轴振动幅度。
- 在”滑动控制”效果中加入关键贞,这样就可以控制wiggle振动幅度了。
看了这个帖子的回复,有很多说是看不懂,这里做一个更详细一些的说明,看得懂的就没必要看下去了,看不懂的继续看完,千万不要觉得自己看得懂就在后边说风凉话,变相的讥讽初学者,那并不代表你比别人聪明。
--------------------------------------------------------------------------------
正文如下:
为了应对不同层次的同学看着更清晰明了,我会像翻译员一样,把上边的每一句进行翻译和解释,___内的内容为原文,[]内的就是我的解释了,希望大家都能看懂。
函数:
wiggle(freq, amp, octaves = 1, amp_mult = .5, t = time)
[这只是一个公式,()内的freq, amp, octaves只是公式的xy,就像中学的代数一样,每一个代数不代表具体数值]
freq 频率[我们把公式里的这个单词用数字代替后,那我们输入的这个数字就是抖动的频率,什么是频率呢?简单地说,频率就是一秒钟内往返多少次,高频抖动就是每秒抖动的次数非常高]
amp 振幅[同上,我们在使用这个表达式时也是用数字代替这个单词,也可以用一个函数代替,下边会说到,耐心看]
octaves 振幅幅度[就不废话了,再啰嗦这些估计看得人会疯的]
amp_mult 频率倍频[就不废话了,再啰嗦这些估计看得人会疯的]
t 持续时间[就不废话了,再啰嗦这些估计看得人会疯的]
说明:
频率和振幅是必须具备的参数其他选填写
wiggle(freq, amp, octaves = 1, amp_mult = .5, t = time)
例如wiggle(50,100)
实例:
打开AE CS4[不做解释]
新建工程[同上]
新建合成[同上]
使用文字工具 Ctrl+T 在合成内输入文字[创建文字层的方法很多,这里不做重点解释了]
给文字层应用动画预设(菜单 – 动画 – 应用动画预设)
(..\Adobe\Adobe After Effects CS4\Support Files\Presets\Transform\Separate XYZ Position.ffx)
[这里说明一下,有些同学可能不知道怎么回事,动画预设就像特效一样,这里的动画预设可以不用这么复杂的找他,我们只要在AE的右侧Effects&Presets(效果和预设)面板内的搜索栏里打上Separate XYZ Position,你要找的这个预设就这么找到了,把他拖放到你的文字层上就算是应用动画预设了]
查看控制效果 F3 (XYZ位置分离()[F3是特效控制面板的快捷键]
按住ALT键点击该效果Y轴关键贞记录按钮(时钟图标)
在表达式处输入:wiggle(50,100)
播放,预览效果(这时已经可以看见通过wiggle函数,文字在不停的颤动)
给文字层添加效果(表达式控制 – 滑动控制)
[这里需要解释一下,添加特效(表达式控制-滑动控制),这是中文翻译过来的意思,在英文版软件中你肯定找不到这些字符,英文面板中的翻译是(Expression Control – Slider Control)]
将(XYZ位置分离)中Y轴上表达式改为
str=effect(”滑动控制”)(”滑动”)
wiggle(50,str)
[Y轴上表达式应该是
str=effect("Slider Control")("Slider")
wiggle(50,str)]
此时可以通过”滑动控制”中的滑杆控制文字Y轴振动幅度。
[翻译过来是‘此时可以通过"Slider Control"中的"Slider"数值来控制Y轴振动幅度’也可以靠给"Slider"添加关键帧来控制Y轴振幅的强弱和有无]
以上是单独控制某一个轴向上的振幅,我们有时候需要控制整个镜头的xyz的整体振幅怎么办呢?
以下是控制wiggle的另一种方法,可以解决这个问题
1.
新建一个文字层
2.
在文字层上添加Expression Control – Slider Control特效
3.
打开文字层的Position属性
4.
按住Alt键左键点击Position属性的添加关键帧符号(就是那个小秒表符号)
5.
我们写入以下表达式
x=temp = effect("Slider Control")("Slider");
[temp, temp, temp];wiggle(15,x)
这样我们就可以用特效的Slider来控制抖动的振幅了,大家可以试一试
当然,我们的方法还有很多。比如,我们还可以新建一个调节层(Adjustment Layer)添加Expression Control – Slider Control特效,表达式添加方法也是在文字层的Position属性里添加,表达式内容我们就要有点小的改动。见下:
x=temp = thisComp.layer("Adjustment Layer 1").effect("Slider Control")("Slider");
[temp, temp, temp];wiggle(15,x)
这种方法的区别只是把控制的特效单拿出来放在了一个新的固态层中,方便我们整个合成项的控制,方便一些特殊时候使用。
F. 如何编写ae脚本
1.创建合成
在ae中的基本所有的操作都是在合成中进行的,所有我们先来讲一下如何创建一个合成。
创建合成命令可以在帮助手册中的ItemCollection object(82页)找到。
app.project.items.addComp(合成名称,宽度, 高度, 像素长宽比,持续时间, 帧速率);
比如,我们想要创建一个叫“合成”的合成,分辨率是1280*720,时长是8秒,帧速率为25帧每秒,那么,我们就可以这么来写:
app.project.items.addComp("合成",1280, 720, 1, 8, 25);
2.创建文件夹
创建文件夹命令也同样是在帮助手册中的ItemCollection object(82页)找到。
app.project.items.addFolder("名字");
这里我们可以写一个小例子,比如,我们想创建一个叫“合成”、分辨率是1280*720、时长是8秒、帧速率为25帧每秒的合成以及一个叫“文件夹”的文件夹,我们需要将这个所创建出来的合成移动到新创建的文件夹当中,我们就可以这么来写:
var newFolder=app.project.items.addFolder("文件夹");var newComp=app.project.items.addComp("合成",1280,720,1,8,25);// 使用parentFolder命令将新建的合成放入新建文件夹中newComp.parentFolder=newFolder;
js小知识:
1.var是声明变量,最先创建变量时需要在变量名前使用var进行声明,声明变量时可以不赋值,可以在使用的时候再赋值,如:
var num;num=1;
2.希望大家在刚开始的时候就养成良好的变量名书写规范,这里建议大家使用驼峰命名法(所谓驼峰命名法,就是变量中的从第二个单词开始,首字母需要大写,如:newComp)。这样可以大大提高代码的可读性,以及便于你自己及他人进行代码维护。
3.每句代码写完后,需要在该句末尾加 ; 号。
4.js中书写注释有2种方法: // 和 /* */ 。如果想要书写单行注释就可以使用//。如:
//这是一个单行注释
如果想要书写多行注释就可以使用 /* */ , /* */ 中间添加要写的注释内容。如:
/*
这是一个多行注释这是第二行这是第三行 */
3.获取所选择的合成
我们经常会对在选择的合成中进行一些操作,那么获取当前所选择的合成我们就需要这样来写:
var currentComp;// 获取当前所选中的对象currentComp = app.project.activeItem;// 判断当前所选中的对象是否是合成对象,如果是则返回frue,如果不是则返回falseif (currentComp instanceof CompItem) {
return true;} else {
return false;}
这里activeItem是获取当前被选择的对象,但是当前被选择的对象有好多种,比如:当什么都没有选中时,他就是null,是个空对象,或者选中的是文件夹或者素材对象,所以我们这里需要判断一下。
js小知识:
1.instanceof运算符是用来判断一个对象是否属于这个类,返回值是一个真或假的布尔值。
currentComp instanceof CompItem 的意思就是当前所选择的对象是否是个合成。
2. if为判断语句,书写格式为:
if (判断条件) {
满足条件后执行的语句;} else {
不满足条件所要执行的语句;}
在以后的对选中的合成操作时,肯定需要先判断当前是否选中了合成,如何没选中,我们就弹出提示,如果已经选中,我们在进行后面的一系列操作,这时,我们可以把上面的判断封装为一个函数来方便后面的调用。
比如,我们要选择一个合成,如果是合成我们就返回当前所选择的合成名字,并将分辨率设置为1920*1080,如果所选择的不是合成,则返回“请选择合成”,我们可以这样来写:
var currentComp;function selComp(){
currentComp=app.project.activeItem;
if(currentComp instanceof CompItem){
return true;
}else{
alert ("请选择合成");
return false;
}}if(selComp()){
alert (currentComp.name);
currentComp.width=1920;
currentComp.height=1080;}