LibGDX 多循环音效在桌面上工作,但在 Android 上不工作
Posted
技术标签:
【中文标题】LibGDX 多循环音效在桌面上工作,但在 Android 上不工作【英文标题】:LibGDX multiple looping sound effects work on Desktop but not on Android 【发布时间】:2015-06-06 18:59:59 【问题描述】:我知道,我知道——又一个 libgdx“在桌面上工作,而不是在 android 上工作”线程......
我在循环音效方面遇到了一个奇怪的问题。
我正在开发的游戏的 Android 版本似乎只能在任何给定时间循环播放单个音效。
桌面版可以同时循环播放多个音效,同时还可以在循环播放的同时播放单曲音效,没有任何问题。 (同样,循环播放的声音会在桌面上同时播放。)
我在播放器的太空船和 Android 上有一个持续的循环音效,如果它正在播放,那么任何其他 sound.loop() 似乎都会被完全忽略,尽管它能够毫无问题地播放单人播放音效。
如果我将其中一个 soundEffectAsset.loop() 命令更改为 soundEffectAsset.play(),它会正常播放,只是不会循环播放,如果我阻止玩家的飞船播放其循环播放的引擎声音,则可以使用其他音效循环播放,但一次只能播放一个。
我已经在两个不同的安卓设备上测试过了。
我知道我玩过其他开发者的 Android 游戏,它们同时播放多个循环音效,所以我想知道是否有什么特殊的东西与 libgdx 相关,以便让它在 android 上也能正常工作它在桌面上。
【问题讨论】:
【参考方案1】:我遇到了同样的问题。这似乎是声音的问题,在 2011 年和 2012 年报告为错误:
2011 bug report
2012 bug report
似乎没有在 2015 年修复,但您可以通过使用音乐而不是声音来解决它。到目前为止,还没有发现这样做的任何缺点。
【讨论】:
谢谢,这个解决方法似乎已经解决了这个问题:) 现在怎么样?我有一个简短的循环声音,我想根据游戏玩法改变音高。不幸的是,Music
无法做到这一点。在桌面上使用声音效果很好,但在安卓上只能播放一次。这只是56kB
中的.mp3
。以上是关于LibGDX 多循环音效在桌面上工作,但在 Android 上不工作的主要内容,如果未能解决你的问题,请参考以下文章