AE常用的18个表达式: |
您所在的位置:网站首页 › ae怎么添加位置关键帧 › AE常用的18个表达式: |
◾不透明度忽闪(屏闪): n = Math.sin(time*10); if (n 0){ v = velocityAtTime(key(n).time – thisComp.frameDuration/10); amp = .03; freq = 2.5; decay = 4.0; value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t); }else{value;} 上述内容复制粘贴使用即可 注意:motion2脚本也带此功能,方法不唯一
15.反弹表达式 原理:k表示反弹最终结果,a表示反弹阻力,b表示反弹变化时间
举例: k=500; a=8; b=30; x=k*(1-Math.exp(-a*time)*Math.cos(b*time)); [x,x] (根据不同情况调节kab的数值即可)
16.数字递增表达式 原理: StartNumber表示开始时的数值, EndNumber表示结束时的数值, StartTime表示开始的时间, EndTime表示结束的时间,和前面的linear表达式相对应 举例: StartNumber=1; EndNumber=20; StartTime=0; EndTime=3; t=linear(time,StartTime,EndTime,StartNumber,EndNumber); Math.floor(t)
17.挤压与伸展 原理:spd表示挤压拉伸的速度,maxDev表示挤压拉伸的大小,decay表示衰减
举例: spd =20;maxDev =10;decay = 1;t = time – inPoint; offset = maxDev*Math.sin(t*spd)/Math.exp(t*decay); scaleX = scale[0] + offset; scaleY = scale[1] – offset; [scaleX,scaleY]
spd =10;maxDev =8;decay = 1; t = time – inPoint;offset = maxDev*Math.sin(t*spd)/Math.exp(t*decay); scaleX = scale[0] + offset; scaleY = scale[1] – offset; [scaleX,scaleY]
18.运动拖尾【位置跟随】 原理: delay表示要延迟的帧数
举例:为位置属性添加表达式 delay = 0.5; d = delay*thisComp.frameDuration*(index-1); thisComp.layer(1).position.valueAtTime(time-d);
如想要实现不透明度拖尾需为不透明度属性添加表达式 opacityFactor =.80; Math.pow(opacityFactor,index-1)*100(调整好一个图层后复制多个)
另一种位置跟随表达式: ①thisComp.layer("leader").transfrom.position.valueAtTime(time-(thisComp.frameDuration*index)) ②先位置同步: let leader=thisComp.layer("图层名") let leaderPosition=leader.transfrom.position
可有可无【value=】leaderPosition
其次空出一部分:(能看到到小弟存在) let leader=thisComp.layer("leader") let leaderPosition=leader.transfrom.position let leaderLagggingPosition=leaderPonsition.valueAtTime(time-0.1)
value=leaderLagggingPosition 或者 let leader=thisComp.layer("leader") let leaderPosition=leader.transfrom.position let leaderLagggingPosition=leaderPonsition.valueAtTime(time-frameDuration)
value=leaderLagggingPosition 或者 let leader=thisComp.layer("leader") let leaderPosition=leader.transfrom.position
let lagTime=thisComp.frameDuration
let leaderLagggingPosition=leaderPonsition.valueAtTime(time-lagTime)
value=leaderLagggingPosition 最后 多个跟随者出现: let leader=thisComp.layer("leader") let leaderPosition=leader.transfrom.position
let lagTime=thisComp.frameDuration*index
let leaderLagggingPosition=leaderPosition.valueAtTime(time-lagTime)
value=leaderLagggingPosition
滞后:缓慢随后 注意: Laggging(Lag)=缓慢移动(滞后) 帧持续时间(帧的时长;帧持续期):frameDuration 引用值:value 源文本:SourceText 依次引用上一个图层:*index 字符串数据类型 数字数据类型 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |