Pre Spatializer Effect - Unity 和 Google VR 音频
Pre Spatializer Effect - Unity and Google VR Audio
我在 unity 中使用 GVR Audio 为我的音频源提供 HRTF,我的项目涉及模拟虚拟环境的声学,这需要在 HRTF 过滤器之前发生。
在默认的统一音频源上,有一个空间化 post 效果的选项,这意味着我可以在那里插入我自己的效果。但是在 GVR 音频源上没有这样的选项,推荐使用 GVR 空间化 post 效果的方法是什么?
GvrAudioSource 使用 Unity 的 AudioSource under the hood. This means, it is possible to apply pre-spatialization processing using the OnAudioFilterRead 方法 - 正如您通常在脚本中为音频源编写的那样。
或者,对于需要 spatializePostEffects 选项的其他音频效果组件,您可以通过脚本将下面的相应行添加到 Awake() 函数中来简单地启用该选项GvrAudioSource.cs:
void Awake () {
...
audioSource.spatialBlend = 1.0f;
audioSource.spatializePostEffects = true; // Add this line.
OnValidate();
...
}
另请注意,不幸的是,这目前不允许您在编辑器中添加 Unity 的库存 AudioEffect 组件(例如 AudioLowPassFilter),因为它会抱怨该游戏中缺少 AudioSource 组件目的。然而,这只是一个 UI 限制,即在 运行 时间内添加具有此类限制的组件仍应按预期工作。
希望这能回答您的问题。
干杯
我在 unity 中使用 GVR Audio 为我的音频源提供 HRTF,我的项目涉及模拟虚拟环境的声学,这需要在 HRTF 过滤器之前发生。
在默认的统一音频源上,有一个空间化 post 效果的选项,这意味着我可以在那里插入我自己的效果。但是在 GVR 音频源上没有这样的选项,推荐使用 GVR 空间化 post 效果的方法是什么?
GvrAudioSource 使用 Unity 的 AudioSource under the hood. This means, it is possible to apply pre-spatialization processing using the OnAudioFilterRead 方法 - 正如您通常在脚本中为音频源编写的那样。
或者,对于需要 spatializePostEffects 选项的其他音频效果组件,您可以通过脚本将下面的相应行添加到 Awake() 函数中来简单地启用该选项GvrAudioSource.cs:
void Awake () {
...
audioSource.spatialBlend = 1.0f;
audioSource.spatializePostEffects = true; // Add this line.
OnValidate();
...
}
另请注意,不幸的是,这目前不允许您在编辑器中添加 Unity 的库存 AudioEffect 组件(例如 AudioLowPassFilter),因为它会抱怨该游戏中缺少 AudioSource 组件目的。然而,这只是一个 UI 限制,即在 运行 时间内添加具有此类限制的组件仍应按预期工作。
希望这能回答您的问题。
干杯