所有分类
  • 所有分类
  • 宿主
  • 工具
  • 效果器
  • 教程
  • 采样器
  • 音源
  • 预设采样
  • 工程模板
  • 乐谱

Kontakt Script官方教程 – 音组管理

目录
[隐藏]

音组管理

如果一个乐器中有多个音组,通过下面的这些函数,用户可以通过代码控制音组:

disallow_group(<音组索引>) 禁用特定的音组
allow_group(<音组索引>) 激活特定的索引
find_group(<音组名>) 返回特定音组的索引
group_name(<音组索引>) 返回特定音组的名称

每个音组都有独立的索引。音组索引从0开始编号,到音组数量-1为止。如果用户不知道某一音组的索引,可以使用find_group()指令,在双引号内输入音组的名字,其索引就会被返回。group_name()的工作方式恰好相反。

默认情况下所有音组都处于激活状态。如果用户只想保留一个音组,最好是先使用disallow_group($ALL_GROUPS)。$ALL_GROUPS是内建变量,内编了所有音组的地址。所有音组都禁用之后,再使用allow_group()命令,例如激活第一组:allow_group(0)。

$ALL_GROUPS
在disallow_group()和allow_group()函数中提供所有音组的地址
on note
  disallow_group($ALL_GROUPS)
  allow_group(find_group("piano_1"))
end on

发生中的音组不能修改。

还有一个内建阵列也非常有用:%GROUPS_AFFECTED

%GROUPS_AFFECTED
音组受到当前的音符输入或释放事件影响后,可以使用%GROUPS_AFFECTED调取这些音组的索引

此函数可以用于调取当前事件影响的音组数量:num_elements(%GROUPS_AFFECTED)。

$NUM_GROUPS也是一个十分有用的内建变量:

$NUM_GROUPS
乐器的总音组数量

此变量返回乐器中的音组总数,若想声明一个下拉菜单,其中包含所有音组名,那么$NUM_GROUPS就非常有用了:

on init
  declare $count
  declare ui_menu $group_menu
  while ($count < $NUM_GROUPS)
    add_menu_item ($group_menu,group_name($count),$count)
    inc($count)
  end while
end on

如果用户修改了音组的数目或者名称,这些改动不会立马体现。这时点击Apply按钮,或者保存后加载乐器可以应用改变。

0
分享海报
需要编曲混音教程、乐谱、工程文件,请联系微信:musicyoupin
没有账号?注册  忘记密码?