首页 > 解决方案 > 如何在 Unity 的 2D 应用程序中获得空间声音?

问题描述

我的 2D 游戏中有一个检查点,在小范围内应该会发出声音。但是即使玩家离开了一段距离,声音仍在播放。我尝试在音频源中设置设置:

Max distance = 2 

Volume Rolloff = Linear Rolloff 

Spatial Blend = 1 

但在此之后我根本听不到声音。

它不适用于2D吗?

标签: c#unity3d

解决方案


唯一重要的是你AudioListener在场景中离场景有多远AudioSource

默认情况下,AudioListener在您的MainCamera. 在 2D 游戏中,我怀疑相机会停留在其位置,或者至少始终以固定距离移动到放置玩家和物体的动作平面。

但实际上,您可以将该AudioListener组件移动到GameObject您想要的任何位置,以使其负责接收AudioSource场景的不同 s。

因此,您可以/应该在 2D 应用程序中通过AudioListener从相机中移除 并且将其附加到您的播放器对象来更改它。

然后启用它很重要,Spatial Blend但您已经这样做了。


推荐阅读