我正在編碼吉他英雄克隆遊戲。它工作的很好,但在快速電腦中(高幀率),動畫並不總是流暢。我的意思是有時候音符會滾動。我發現問題可能與我的遊戲循環有關,它不會限制fps(因爲我正在更新傳遞幀時間,我認爲這不是必需的)。當從140fps到60發生下降時,這些顛簸是顯而易見的。編寫一個更好的遊戲循環
我看了一下這個網站:http://www.koonsolo.com/news/dewitters-gameloop/,我試圖實施「FPS依賴於恆定遊戲速度」的方法來查看問題是否得到解決。
問題是我的遊戲更新和渲染穩定在60fps,而聲音回調似乎被稱爲比這更多。我正在使用Audiere for Sound和SDL進行定時器/輸入。
我以爲SDL_Delay會暫停遊戲線程直到完成,但似乎並非如此。有什麼我失蹤? SDL是不是一個真正的時間庫?
您可能會對Unity3D處理此問題的方式感興趣,請查看http://unity3d.com/support/documentation/ScriptReference/Time-deltaTime.html – OneThreeSeven 2012-04-05 13:31:29