生成特效
先从一条简单的特效脚本开始:
start: 2.3end: 6.3龙行天下: .~(C@24W50Y2)脚本构成:
:
英文冒号将脚本分为左右两个部分。冒号左侧为编组名称的中文别名,对应着灯具。冒号右侧为灯具的属性和值。~
波折号表示一个 Cue 的开始符。如果有多个 Cue 首尾拼接,就会出现多个~。这条特效脚本的效果。如果灯具布局是线性开放式的话,比如:一条直线或弧线。将有一半灯具颜色为白色,另一半为黑色,由外侧两端向中心跑动。速度则取决于这段音乐的时长,由 MA2 助手自动计算得出,无需手工输入。
脚本内容与 Effect 参数的对应关系如下:
龙行天下
编组名称的中文别名,对应 grandMA2 中以LXTX命名的编组。同时也对应了一组以LXTX开头的执行器,其中的每一种属性都有一个单独的执行器。它相当于选中了LXTX中的全部灯具,Effect 参数 Qty 的值将与LXTX编组中的灯具数量相同。.
英文句号表示这条特效的结束时间点与事件的结束时间点 end 相同,小节数也为: 6.3。如果与 end 不同,则直接以小节数代替.,例如:10.2~(C@24W50Y2)。详情请参考:用小节数表示时间()
英文圆括号包裹一个属性的特效内容C@24W50Y2。如果存在多个属性,将会出现多个()。例如:(C@24W50Y2)(T@8)C@24C表示颜色 Color属性,@24表示 grandMA2 中第24个Form。这两个参数必须以固定的先后顺序写在开头。它们后面的参数可以是任意顺序。比如:C@24Y2W50W50
表示宽度 Width为:50%Y2
表示翼 Wings为 2。
这条脚本将为 grandMA2 中的一个 Effect 生成 跑灯特效 的全部参数。在脚本中没有表达出来的其他参数均为默认值。比如:颜色高值默认为白色,低值为黑色。详细的语法内容,请参考:特效脚本的基础语法
- 在 MA2 助手网站,鼠标悬停在
工具上,点特效工具包进入页面后,在左侧边条中点击脚本。 - 右侧主窗口输入
媒体名称。英文名在前,中文名在后。 - 将表格文件所在的目录名称拷贝到输入框中。
- 将表格文件名拷贝到输入框中。省略扩展名。
- 输入表格文件的工作表名称。
- 将音视频文件所在的目录名称拷贝到输入框中。
- 将音视频文件名拷贝到输入框中。省略扩展名。
- 输入 speed 信息。start, end, tempo, bpm
- 输入 bpm, drumbeat
- 输入 delay
- 在事件区域,输入参数:start, end, clips。
- 每输入完成一个事件的参数,就可以点击
播放,同步播放这一片段的音乐。 - 当输入完成所有事件后,点击
【】播放。可选择播放任意时间点,任意时长的音乐。 - 点击
【】播放时,在对话框中选择生成,即可在 grandMA2 中生成 Timecode。Timecode 的名称为媒体的英文名称,而中文部分无法显示。 - 切换到 grandMA2 窗口查看结果。
自动生成 Effect 参数
Section titled “自动生成 Effect 参数”- 写好脚本,点击
播放按钮时,会自动在 grandMA2 中生成 Effect 参数并执行回放。同时,也同步播放本时间段的音乐。 - 不再需要在 grandMA2 中输入各种数据和指令。
- 脚本是文本,可阅读,内容详情一目了然。有提示助记的作用。
- 脚本还可拷贝、剪切、粘贴,方便编辑修改。
- 脚本尺寸很小。一首歌曲的完整脚本仅仅是 KB 级别,方便分享。
特效脚本基于时间线编程
Section titled “特效脚本基于时间线编程”- 在创建特效脚本的同时也生成了时间线。
- 本章时间线的用法与 生成时间线 之中的完全相同,不再赘述。
- 当编写并调试好全部脚本后,可点击
范围播放,在对话框中勾选生成静态数据,则自动在 grandMA2 中生成Timecode、Sequence、Cue的静态数据。 - 当然,如果你采用动态回放,就无需生成静态数据。只保存脚本就可以了。
自定义 Form
Section titled “自定义 Form”- grandMA2 自带的 Form 有 23 个。能支持基本的需求。
- 如果遇到比较复杂的特效需求,则需要自定义 Form 来满足。当然,最省事的办法还是直接用现成的。下载并导入 MA2 助手提供的 Form。
- 可在此基础上,在 grandMA2 中添加或编辑修改自己需要的 Form。
- 如果重开一个新项目,则需要将自定义的 Form 导入。
简单灵活的灯具选择
Section titled “简单灵活的灯具选择”- 通过
临时编组和拼接编组语法解决灯具选择问题。 临时编组。将一个编组中的灯具做出调整,动态生成一个临时的编组。比如:调整顺序,截取一部分,或者做出类似 MAtricks 那样的操作。详情请参考:拼接编组。将多个组动态拼接成一个大的组。详情请参考:混合编组。临时编组与拼接编组混合使用。- 以上动态生成的新的编组不会被保存在 grandMA2 中。也无需保存。
- 同步音乐的旋律和鼓点节奏是节目编程的最基本需求。这必须依赖速度参数。
- 旋律的速度参数。
- 鼓点节奏的速度参数。
Fade in 和 Fade out
Section titled “Fade in 和 Fade out”- Cue 中 Fade in 和 Fade out 在很多场景下非常实用。特别是对于水和灯的控制。
- 如果设定了 Fade in,那么默认 Fade out 等于 Fade in。除非另外设定。
- 但 Fade out 必须依赖 outDelay 才会生效。否则,系统是无法计算何时开始 Fade out 的。在没有 outDelay 情况下,Fade out 也在 Off Exec 之后生效。
- 从现实角度来看,outDelay 决定了 Cue 的实际特效的执行时长。
- Effect Exec 与 Sequ Exec 一样,也有 Fade in 和 Fade out 功能。但有一个重要的前提:Exec 的状态必须是由 On 向 Off 转换,或者相反。还有个限制:只针对 Dim 属性。
- 由于要 On 或 Off Exec。而对于动态 EffectExec 来说,大多数时候,是不会 Off Exec 的。Fade in,Fade out 显然对于 动态 Effect 是无法适用的。但适用于静态 Sequ Exec 的场景。
- 可用多 Effect 拼接来实现 Fade in 和 Fade out。多 cue,follow 触发。
- 这样相比于 Cue 还是麻烦一些,但好在可以实现。有方案总比没有好。
- 也可以考虑根据 Fade in 和 Fade out 参数自动加入拼接脚本。但这显然会损失灵活性
- 好处是可以用于全部属性的特效。而 MA2 Cue 的 Fade 功能只限定于 dimmer 属性。
- 动态的 Fade in,Fade out 突破了 MA2 的 dimmer 属性限制。Fade in 还可以用作 MIB 功能。
- 注意:必须区别使用 Fade in,Fade out 与幅度主控。Fade in 在 Event 起点前执行,Fade out 在 Event 终点后执行,这与 MA2 的定义也是类似的。而幅度主控是在 Event 起点与终点之间执行,与其他属性的 Effect 无异。
- 注意:MA2 的 Fade in, Fade out 要谨慎使用。起止时间点尤为重要。Fade in,Fade out 的时长不是有效的 Event 时长的一部分。这个很容易被弄错。
- 动态 EffectExec 的 Fade in 脚本。~F5(C@10P0Hg)(D@10P0H80),加在全部 Effect 脚本的最前面一个 follow。在 Event 起点之前执行。Sequ Exec 必须将 Interval 提前。Fade in 必须是 follow 0.
- 动态 EffectExec 的 Fade out 脚本。~Fo5(C@11P0Hg)(D@11P0H80),加在全部 Effect 脚本的最后一个 follow。在 Event 终点之后执行。必须将 endInterval 延后。Fade out 必须是 follow 最后一个。
- 对于一个属性,不能同时使用 Fade in,Fade out 和幅度主控。这样会造成 Fade in 无效。
Delay 和 out Delay
Section titled “Delay 和 out Delay”- Cue 中的 Delay 是 Fade in 之前的时长。相当于延时开始 Cue。
- OutDelay 是 Fade in 之后,到 Fade out 开始之前的时长。相当于 Fade in 完成之后,多长时间之后再开始 Fade out. Fade out 默认与 Fade in 相同,除非单独设定。
- Fade out 之后,此 Cue 动作即告完成。
- 从现实角度来看,outDelay 决定了 Cue 的实际特效的执行时长。
- outDelay 有效的前提是:下一个相邻的 Cue 触发必须是 Follow。
- Fade out 必须依赖 outDelay 才会生效。否则,系统是无法计算何时开始 Fade out 的。
- 如果用多 Effect 拼接来实现 Fade in 和 Fade out. 那 outDelay 可以省略。
- 如果对于较为简单的场景,例如:数控喷头的喷高,用一条样线就可完成 Fade in 和 Fade out,完全不必要额外设定。
- Fade in 和 Fade out 参数只对动态 Effect 第三种实现方式生效。即:对静态数据的 Sequence Cue 生效。对于其他的动态 Effect 实现方式无法起到任何作用。
- Fade in 在 MA2 中生效的前提是:Exec 状态必须由 Off 到 On,必须执行 On Exec,或 Fader Exec num At 100。
- Fade out 在 MA2 中生效的前提是:Exec 状态必须由 On 到 Off,需执行 Off Exec。或者 outDelay 有效,而且后面的 Cue 触发为 Follow。
- Delay 脚本语法。A20,表示延时 20% 的 duration。A1/8,表示延时 12.5% 的 duration。
- 应用场景:动态改变特效的速度参数,俗称:特效调速。
- 原理:将一个幅度主控与一个特效动态关联。当幅度主控的值变化时,特效的幅度将随之改变。
- 幅度主控只有一个属性值,也是用特效控制其变化的。
- 简写名称:fm,后面加索引号组成一个幅度主控名称
fm1。 - 总数量为 50 个。
- 一个幅度主控只能作用于一个属性,不能共享。
- 完整语法举例如下。详情请参考:
fm1 控制灯光颜色淡入。
龙行天下: .~(C@24fm1H红L蓝W50P0S1/4)(D@20W50S1/4)幅度主控: .~(fm1@10P0H100L20W10)- 应用场景:动态改变特效的速度参数,俗称:特效调速。
- 原理:将一个速度主控与一个特效动态关联。当速度主控的值变化时,特效的速度将随之改变。
- 速度主控只有一个属性值,也是用特效控制其变化的。
- 简写名称:sm,后面加索引号组成一个速度主控名称
sm1。 - 总数量为 15 个。
- 一个速度主控可以作用于多个特效参数。
- 完整语法举例如下。详情请参考:
sm1 控制灯光红色和蓝色的变化速度先由慢到快,再由快到慢。
龙舞九州: .~(r@20sm1j718; b@20sm1j718)速度主控: .~(sm1@12P0H100L20W10)- 多属性合并,是指将多个属性特效合并到一个 Effect 之中,每个属性对应其中一行。
- 合并的先决条件:
- 被合并属性必须属于同一类。比如:rgb 虽为三个属性,但都属于 Color 这一大类。不能将 rgb 与 Position 类的属性 tilt 或 pan 合并。
- 被合并属性的外部时序必须相同。起止点、淡入淡出时长都完全相同。但内部时序速度可以不同。
- 完整用法举例。详情请参考:
灯光颜色的经典的彩虹特效。
龙行天下: .~(r@13; g@14; b@15)- 声控可以让灯具的属性值随着输入的音乐的多个频率值的高低变化而实时变化。
- 声控脚本可根据设备分段的数量自动匹配频率。用户只需确定分段数量和每段的设备数量即可。
- 优点:大幅简化了声控功能原本在 grandMA2 中繁杂的编程操作。语法简练,易学易用。
- 先决条件
- 电脑声卡设置为混音。
- 在 grandMA2 中设置 Sound Input 模块中的 Sound Gain,Fade 参数。
- 完整语法举例。详情请参考:
属性 dimmer 随输入音乐的节奏而实时变化。
龙行天下: .~(C@24HredLblueW50P0S1/4)(D@20j7*17)- 参数定时器,可定时修改 Effect 中的一个或多个参数的值。
- 一个参数定时器只能控制一个属性的特效参数,不能共享。
- 相邻事件的特效脚本不能使用相同的参数定时器。比如:一个事件使用了
tr1tr2,与它前后相邻的事件就必须使用其他的索引号的参数定时器,tr3tr4。相隔一个事件后就又可以了。系统预置了 12 个参数定时器,足够编程使用。 - 优点:大幅简化编程步骤。如果不采用参数定时器,就需要编写多个不同参数的特效才能实现相同效果,不但繁琐复杂,而且很难维护。
- 先决条件:在
基础工具包 -> 设置界面,将参数定时器插件导入到 grandMA2 中。 - 语法举例 1:
tr1#10n1/2P0..40!。
tr1 控制特效的相位参数,以 1/2 BPM 的速度递增 10°。范围:0 ~ 40°,初始值:0°。 - 语法举例 2:
tr2#-20n1/2P0..359!。
tr2 控制特效的相位参数,以 1/2 BPM 的速度递减 20°。范围:0 ~ 359°,初始值:359°。 - 完整用法举例。详情请参考:
tr1 控制颜色属性的相位参数。tr2 控制 dimmer 属性的相位参数。
龙行天下: .~tr1#10n1/2P0..40!(C@24HredLblueW50P0S1/4)tr2#-20n1/2P0..359!(D@20W50S1/4)摄像机机位变换
Section titled “摄像机机位变换”- 应用场景:演示、录制视频。现场回放是不需要变换摄像机机位的。
- MA2 助手将参数简化为 3 个。用写注释的方式来写机位变换脚本。
- 语法 1。~F100(near1W80far2)。解释:near1 向 far2 机位切换。宽度:W80。
- 语法 2。31.4~(far2)。解释:far2 机位保持到 31.4 小节。
- 全部机位数据存于 JSON 文件中,或数据库中。
- 机位数据中必须包括以下属性:Sx, Sy, Sz, Rx, Ry, Rz, Fov.
- 机位根据远近分类:closest, near, middle, far。
- 机位根据观察角度分类:1,前视。2,右侧视。3,俯视。4,左侧视。5,仰视。