作者yoll522 (522)
看板GameDesign
標題[請益] SDL音效播放問題
時間Fri Nov 9 22:59:50 2012
各位高手好
我最近在用SDL寫一款遊戲遇到音效播放的問題想請問一下
例如我人物在跳的時候會有『jump』的音效播放
然後那個jump音效我已經確定前面沒有空白區域,一播放就立刻有聲音出現
然後我程式是先撥放jump音效,再開始處理人物的跳躍,例如:
Mix_PlayChannel(-1,chunk_jump,0);
isJump=true;
isAttack=false;
isDefend=false;
可是不知道是程式跑太快,還是SDL內建的Mix_PlayChannel()處理太慢
我人物已經飛在空中了音效才出現,雖然沒有注意聽跟看的話不會發現這細節
可是還是有點介意,
音效大概晚了0.5秒出現吧,請問這是正常的嗎@@?
感謝
另外我們遊戲想說要弄腳步聲,假設說walk的音效長度為0.4秒
那請問各位的做法是在程式裡面弄一個計時器每0.4秒或0.6秒播放一次walk
『如果仍然在走路才判斷』
還是有一種函式可以判斷某音效播放完了沒@@?
例如:
if( walk沒有在播放 == true && 人物有在移動 == true ){
Mix_playChannel(-1,chunk_walk,0);
}
可是有這種函式嗎@@?
我本來想GOOGLE看看SDL的音效函式,可是幾乎每個網站最後都會貼上Lazy Foo的教學
雖然他的第11課有教到音效、音樂的部分,可是我在想一定還有他沒有提到的函式
可是又不曉得該去哪裡查SDL有什麼函式,那個函式有什麼用
請問有人有什麼特殊的管道可以提供嗎@@?
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.49.54
推 BSpowerx:之前有遇過音效lag問題,解決法好像是把檔案壓得小一點.. 11/09 23:06
→ yoll522:我再試試看把文件壓小一點會不會改善,謝謝唷 11/10 01:52
→ yoll522:可是他的官網文件用的是SDL_audio.h我是用擴充的 11/10 01:53
→ yoll522:SDL_mixer.h 11/10 01:53
→ yoll522:感謝你,我趕緊來讀讀看其他函式 11/10 23:36