在单个效果表达式中控制其他效果
Controlling other effects in a single effect Expression
我不知道如何正确地写这个问题,问题是我想通过一个效果来控制另外两个效果,就像这样:
var a=value;
var b=thisLayer.effect("Form")("Y Displace");
var c=thisLayer.effect("Form")("X Displace");
snd=thisComp.layer("Bass").effect("Sound Keys")("Output 1");
if(thisComp.layer("Funcion").effect("On/off Displace")("Slider")==0){
a=snd*10;
b=snd*4;
c=snd*4;
} else {
a=0;
b=0;
c=0;
};
问题是其他效果(Y位移和X位移)没有改变,我写的这个表达式取的是var c
的值,而不是我想要的var a
的值
我需要在单个效果中编写一个表达式,因为我需要将相同的表达式复制到具有相同效果集的不同图层,并且为每个图层自定义它是相当痛苦的。
它不能像你想的那样工作:属性中的表达式影响该属性而不影响其他属性(变量a, b, c可以引用一些其他属性,但不能修改它们的值)。
那么在与'a'(你没有给出它的名字)对应的属性中,表达式将是:
if(thisComp.layer("Funcion").effect("On/off Displace")("Slider").value==0){
10*thisComp.layer("Bass").effect("Sound Keys")("Output 1").value;
} else {
0;
};
在"Y displacement "属性中:
if(thisComp.layer("Funcion").effect("On/off Displace")("Slider").value==0){
4*thisComp.layer("Bass").effect("Sound Keys")("Output 1").value;
} else {
0;
};
等。
编辑:为什么你总是得到大小写"c"的原因是After Effects保留了最后计算的值(它计算,a,然后b,然后c,因此结果是c)。
相关文章:
- 如何添加浮动和非浮动,其他
- 与其他库的jQuery.noConflict()
- 播放当前视频时如何停止其他视频?JavaScript
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- JS编译器/包管理器,用于版本控制
- 除修剪外的其他功能
- 是否可以控制获取哪些Google地图脚本(JavaScript API)
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- Array.length似乎不起作用;console.log则显示其他情况
- 如何消除代码中的未定义和其他问题
- 如何在其他样式中控制我的
样式
- 控制立方体或其他几何体的每个面,分为三.js
- 在某些情况下没有“访问控制-允许源”标头错误,但在其他情况下则没有
- 在三个JS中缩放相机,没有轨迹球控制或其他相机控制库
- 变量在控制台中更新.log但不在其他函数中更新
- 如何从其他指令控制表单的有效性
- 在单个效果表达式中控制其他效果
- 检测纸张中的 ctrl+z(和其他控制组合.js
- JQuery DatePicker绑定控件可以'不得包含在其他控制中