因此,我正在研究的Unity项目基本上利用音乐的音量来实现一些游戏机制。
我想为用户添加音量级别选项,但我发现这样做的唯一方法是直接更改音频源的输出音量或直接改变audiolisteners听到的音量。
这是一个问题,因为我使用的是AudioSource.GetSpectrumData,如果修改了源或侦听器卷,则频谱数据值会随这些值一起下降。
所以我需要的是一种控制游戏输出音量的方法,而不会改变任何音频源或听众的音量。
答案 0 :(得分:0)
您是否尝试过使用Unity的音频混音器?你会避免接触来源或听众。
据我所知,可以直接通过曝光控制AudioMixer的参数,然后使用SetFloat函数设置值。
查看Unity发来的视频:exposed Audio mixer parameters
答案 1 :(得分:0)
通过使用音频混音器组件,您可以将每个音频监听器设置为在某个通道上,但是有一个父系统,这意味着您可以拥有一个同等影响所有音量的主通道。 Here是组件的文档。
这是一个关于如何使用它的Unity教程:
Parameters(如果需要)
希望有所帮助。