audio_sound_gain

使用此函数,您可以在给定的时间长度内淡入或淡出声音资源或实例,也可以用于立即设置声音增益。

时间以毫秒为单位测量,函数要求您输入最终增益水平,以使声音在该时间结束时达到。此增益可以在 0(静默)和大于 0 的任何值之间,但通常将最大音量视为 1。可以使用超过1的任何内容,但根据使用的声音和正在编译的平台,播放声音时可能会失真或削波。注意,增益范围是线性的,若要立即改变增益,只需将时间参数设置为0即可。

注意使用db_to_linlin_to_db在线性增益和以分贝(dB) 表示的增益之间来回转换。

如果索引是声音资源,则此函数将影响当前在房间中播放的所有声音实例,并且最终音量将是播放该声音的所有其他实例时的音量。但是,如果您使用了从audio_play_sound等函数返回的索引,它只会影响该声音的一个实例。

默认资源级增益是声音编辑器中"音量"滑块的值:

 

语法:

audio_sound_gain(index, volume, time);

参数类型描述
indexSound Asset or Sound Instance ID or Audio Queue ID设置增益的声音索引。
volumeReal音乐音量的值。
timeReal增益变化的长度,单位为毫秒。

 

返回:

N/A

 

示例1:

var snd = audio_play_sound(snd_fountain, 10, true);
audio_sound_gain(snd, 0, 0);
audio_sound_gain(snd, 1, 5000);

上述代码将要播放的声音的索引分配给局部变量 snd。然后,该变量用于将该特定声音的音量降低至 0,并在 5 秒内逐渐增强至最大音量。

 

示例2:

audio_sound_gain(snd_fountain, 0.5, 0);
var snd = audio_play_sound(snd_fountain, 0, true, 2);

上面的代码首先将声音资源 snd_fountain 的增益设置为 0.5。然后,它使用 audio_play_sound 播放此声音,并将此新声音实例的增益设置为 2( 使用函数的可选 "gain" 参数)。