CRI ADX  Last Updated: 2024-07-17 10:48 p
发声数控制

关于ADX处理的发声数控制

ADX处理的声音单位大致分为Cue Voice
发声数限制功能可分别应用于Cue和Voice。
这两个设置都可以从CRI Atom Craft中设置。

Cue的发声数控制

Cue限数

“Cue限数”是Cue本身同时可以播放多少声音的限制。
例如,如果设置为1则该Cue同时只能播放1个声音。
如果是先发优先,则第2个声音的请求无效;如果是后发优先,则停止正在播放的Cue,播放第2个新的声音。
也就是说,它是在一个Cue中闭合的播放数限制。不会受到其他Cue发出多少声音的影响。
Cue限制值并不是整个应用程序的最大同时播放Cue数,可以将其看作是该Cue能够多次播放多少声音的数量。
(它不是限制其他Cue的播放数的功能。)
如果希望限制整个应用的同时播放Cue数,则必须将所有的Cue注册为同一“类别”, 创建设置类别的限制数的数据。

类别Cue优先级

如果想要控制Cue之间的发声优先级和发声数,请使用“类别”功能。
在类别中注册Cue,在类别端启用“限制标记”, 为“限制数”设置同时播放数的上限。
(请注意,如果不启用限制标记,则通过优先级限制发声数不会起作用。)
类别中的发声优先级由“类别Cue优先级”指定。
超过类别中设置的“限制数”,播放类别所属的Cue时, ADX运行库将根据Cue中设置的类别Cue优先级值,判断停止哪个Cue的播放。
例如,创建“Voice”类别,限制数设为2,如果注册多个Cue时, 属于Voice类别的Cue最多只能同时播放2个声音。
如果要播放第3个声音,则停止播放该类别中优先级最低的Cue播放并播放第3个声音。
对于未在类别中注册的Cue,类别Cue优先级的值不会起作用。(优先级会被忽略。)
此外,如果是不同“类别组”的类别,则可以注册多个Cue。

Voice发声数控制

Voice是Cue中配置的波形单位的发声元素。
Voice发声数控制独立于Cue。
Voice的最大同时发声数在“Voice限数組”“限制数”中设置。
在Voice的优先级管理中使用“Voice优先级”
Voice限数組中设置的Voice最大同时发声数仅适用于属于该组的Voice。
不属于该组的Voice将由应用程序端实际准备的Voice数限制。
也就是说,Voice与Cue不同,整个应用程序预设情况下存在Voice数的上限。
(应用程序端所准备的Voice数是实际上限。)
Voice限数組用来对特定的Voice类型进一步限制播放数。
例如,如果在应用程序端将用于SE的Voice池的Voice数设置为16,则SE最多可以播放16个声音。
如果此时想要加上限制,例如使枪声在SE中最多只响5声, 请将枪声SE注册到Voice限数组,并将限制数设置为“5”。
这样就可通过这一设置实现如下播放限制:枪声以外的SE最多16声,枪声最多5声,合计最多16个声音。
无论枪声的Voice优先级多高,播放也不会超过Voice限数組指定的限制数。
此外,无论是否属于Voice限数組,Voice优先级的值都会被共同评估。
(这一点也与Cue不同。) 因此,如果将枪声以外的SE的Voice优先级设置为1,将枪声的Voice优先级设置为0, 则在枪声以外的SE响16声的状态下,不会再播放枪声。

Cue与Voice发声数控制的关系

Cue与Voice发声数控制的机制相互独立。
另一方面,由于Voice是包含在Cue中的元素,因此如果Cue不发声,则该Cue中包含的Voice也不会发声。
先执行Cue的发声数控制,再执行Voice发声数控制。
因此,请注意每个Cue的类别Cue优先级值以及包含在Cue中的Voice的Voice优先级值设置。