研发实战:HoloLens空间音频开发的简单技巧和建议
来源:映维网 作者 映华
HoloLens可以将数字对象叠加到现实世界,但要精确地呈现全息图,开发者需要应对一系列的独特挑战。例如声音。日前,微软首席软件工程师麦克·切米斯查克(Mike Chemistruck)通过博文介绍了音频开发方面的技巧和建议。下面是映维网的具体整理:
为应用程序添加音频是提高用户参与度和体验真实感的简单方法。例如,当为单击按钮这样的简单操作添加声音后,用户就能进一步明确系统已识别自己的输入。更进一步,为相同的按钮点击启用空间音频可以增加体验真实感,让用户感到面前的用户界面仿佛是与自己共存在同一个物理房间之中。上面这个简短的视频展示了所述的差异(为了模拟通过HoloLens听到的声音,建议你戴上耳机)。
首先,你需要在Unity项目中添加一个音频空间插件。我建议是纳入Microsoft Spatializer。这样做的另一个好处是:你可以将所有空间音频处理卸载到HoloLens 2的专用硬件,从而为应用程序的核心逻辑腾出更多的CPU。你可以直接通过Github的Releases页面下载插件。另外,由于它是完全开源,所以你可以出于任何原因自定义插件。
将插件添加到Unity项目后,可以通过单击Spatialize复选框并将Spatial Blend设置为1.0,从而为音频源启用空间音频。你同时会注意到有一个音量衰减曲线。Unity的默认曲线可能适用或不适用于你的应用程序。我们建议禁用UI声音的距离衰减。要这样做,请将曲线展平,如下所示。不要害怕尝试这个音量曲线。不同的应用程序都有不同的要求,所以不同的曲线可能同样有益。
Unity Audio Source设置可启用空间音频和禁用距离衰减
空间音频有助于用户区分同时播放的多个声源。当空间声音启用时,用户可以获得更精确定位全息图的能力,如下面这个视频所示:
关于Microsoft Spatializer的一个重要注意事项:为了利用HoloLens 2的硬件加速功能,Unity音频混音器功能会被绕过。如果你习惯于将音频源路由到不同的混音器以更好地控制音量或效果处理,你将需要根据每个源应用效果,而不是使用音频混合器。Unity带有内置的音频效果,比如EQ滤波器和混响。另外,诸如WebRTC等其他Unity插件依赖于音频效果基础设施。如果要将音频效果与Microsoft Spatializer结合使用,请确保选中音频源的“Spatialize Post Effects”复选框,否则这些组件将无法正常工作。
关于何时不使用空间音频的简要说明。考虑到启用空间音频非常容易,你可能倾向于为应用程序中的所有音频启用它。但在有些情况下,这可能会分散注意力。一般来说,空间音频最适合包含视觉成分的元素,如菜单和全息图等。对于应用程序中仅提供音频的部分,如叙述者或背景音乐,空间音频实际上可能会分散用户的注意力。考虑禁用这些声音的空间音频,这样用户就可以享受纯粹的声音,而不是四处翻寻它们来自何处的视觉提示。
如果你想了解更多关于在应用程序中添加空间音频的信息,请参阅这个文档和空间音频教程。如果你正在使用Unreal引擎进行开发内容,所述原则同样适用,但设置过程略有不同。这个页面
介绍了更多关于在Unreal引擎中使用空间音频的信息。然后,如果你希望探索音频的其他用例,请关注Project Acoustics。它可以通过模拟房间效果为应用程序添加额外一层沉浸感。
原文链接:https://yivian.com/news/79161.html