2012-08-29 80 views
1

我正在开发Android和LibGDX桌面游戏。我在播放声音时遇到问题。游戏是迷宫风格的游戏,有使用加速度计在设备上滚动的球。当球撞到边界时,或者彼此发出声音。体积根据碰撞的线速度设置。问题是,当球接近边界时,球会在很短的时间内反弹很多次。这最终导致主线程陷入困境,并且UI开始出现口吃。在log-cat中它说“降低采样率”或类似的东西,因为它不能处理负载。另外,当发生一系列碰撞时,在没有碰撞的情况下,声音会继续播放。LibGDX声音问题

我需要每个声音独立于其他声音播放。我在想,也许为声音创建一个单独的线程。任何帮助将不胜感激。

回答

1

我现在用我的游戏声音工作。最后一个LibGDX版本可以同时播放很多声音。所有你需要做的是,如果你打算在同一时间播放它们,控制播放的最大声音的数量(更多的声音需要更多的设备资源),并降低最多播放的采样率和质量。您可以用Audacity重新采样声音。尝试将其保存为质量较差的OGG文件,然后重试。此外,您可以将声音创建为静态,并使用相同的声音播放多次,而无需创建新声音。

希望这可以帮助你。

+0

谢谢!这是一些很好的建议。我会尽量控制最大声音的数量。我只需要更改变量?还是有其他需要通过方法更新? – TheWhiteLlama