Version: 2019.3
WebGL 网络
WebGL 性能注意事项

使用 WebGL 中的音频

WebGL 中的音频与所有其他平台上的音频在处理方式上有所不同。在其他平台上,我们在内部使用 FMOD 来提供音频回放和混音。由于 WebGL 平台不支持线程,我们需要采用不同的实现方案,该方案在内部基于 Web 音频 API,允许浏览器为我们处理音频回放和混音。

不幸的是,这限制了 Unity WebGL 中的音频功能,只能支持最基本的功能。本页面将介绍预期有效的功能。WebGL 目前不支持此处未列出的任何其他功能。

AudioSource

音频源支持基本位置音频回放,具有暂停和恢复、平移、衰减、音高设置和多普勒效应支持。

支持以下 AudioSource API:

属性

方法

AudioListener

支持所有 AudioListener API。

AudioClip

WebGL 中的音频剪辑将始终以 AAC 格式导入,因为不同浏览器广泛支持该格式。

支持以下 AudioClip API:

属性

方法

  • 部分支持 AudioClip.Create:仅当 streaming 参数设置为 false 时才有效,并可在调用 AudioClip.Create 时加载完整的音频样本。然后,该函数会创建剪辑并在返回控制之前加载所有样本。
  • 部分支持 AudioClip.SetData:只能用于替换 AudioClip 的全部内容。offsetSamples 参数将被忽略。

SystemInfo.supportsAudio

SystemInfo.supportsAudio 在 WebGL 上未实现,并始终返回 true。

WWW.audioClip

如果音频剪辑采用浏览器本机支持的格式,则 WWW.audioClip 应该能在 WebGL 中工作。请参阅 Mozilla 关于支持的媒体格式的文档以获取不同浏览器中支持的格式列表。

Microphone

WebGL 不支持 Microphone 类。

WebGL 网络
WebGL 性能注意事项