[英]libGDX wav sound like a saw
我在將步行聲音循環到我的一個對象時遇到問題。 我的游戲在不同的狀態下運行,我希望聲音在“ RUNNING”狀態下循環播放,問題是wav聽起來像鋸子。 在我的渲染類中創建全局“ long loopWalkSound = -1”之后,一個朋友給了我一個很好的解決方案:
if (myWorld.isRunning()) {
if (loopWalkSound == -1) {
loopWalkSound = AssetLoader.walk.loop();
}
drawGame(runTime);
drawGameButtons();
drawScore();
}
使用此代碼可以使wav正常播放,但是從播放開始就不會停止。 我的意圖是讓WAV只在第一個條件的狀態下播放,並在離開該狀態時停止,或者在游戲聲音關閉時完全不播放(我尚未針對特定的WAV實現此功能,只是為了給您一個想法) 。 有人可以幫忙解決嗎?
將其包裝為布爾檢查,這樣就不必在每個幀上都重新啟動它。 在下面,將wantWalkLoopToBePlaying
更改為任何條件,確定您是否要播放聲音。 例如: boolean wantWalkLoopToBePlaying = state == RUNNING;
。
if (!walkLoopIsPlaying && wantWalkLoopToBePlaying) {
loopWalkSound = AssetLoader.walk.loop();
if (loopWalkSound != -1) walkLoopIsPlaying = true;
} else if (walkLoopIsPlaying && !wantWalkLoopToBePlaying) {
AssetLoader.walk.stop();
walkLoopIsPlaying = false;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.