如何在我的android應用程序中調節幀率?我希望遊戲能夠以不變的速度運行。我的應用程序不需要很高的幀率,所以我不需要一個,因爲這會佔用更多的電池,然後才需要。如何在我的android應用程序中調節幀速率?
4
A
回答
3
請勿使用幀速率來測量時間。用時間來衡量時間。 GC通行證可能需要3/10秒,其他任務可以在後臺啓動等等。
總是有一個系統/設置會比您想象的慢。
然後,您不指定以像素爲單位的速度,但以像素/秒爲單位。每幀動畫需要一定的時間等等。在你的遊戲引擎中,當計算下一幀時,你的輸入之一是「從最後一幀開始已經過了多少時間」。您將該值確定爲秒的一小部分,並將速度/秒乘以該分數。結果是Given Thing從最後一幀開始移動了多遠。
請注意,非常慢的幀速率可能會對碰撞檢測造成嚴重破壞,特別是對於快速移動的物體。如果事情1在幀之間完全通過第2項,只是檢查BBoxes或半徑不會削減它。睡眠()是你的朋友。在幀處理開始時,請致電System.currentTimeMilis()
。在幀處理結束時(包括渲染),再次檢查當前時間。如果差異不夠長,需要足夠的時間睡眠(N)以匹配您期望的幀速率。所以如果你想要20fps最大,那麼每個幀應該需要50ms(1000ms/20 = 50ms)。如果一幀只花了10ms來模擬和渲染,那麼在移動到下一幀之前,您需要睡眠另一個(50ms - 10ms =)40ms。
或者,您可以儘可能快地繼續運行模擬,並且每隔一段時間只渲染一次屏幕。這對電池壽命沒有多大幫助(雖然OpenGL硬件加速如果來自我的Evo的熱量有任何跡象,但價格昂貴),但可以提供非常流暢的體驗。哎呀,你可以開始計算這個點上的運動模糊。
相關問題
- 1. 我想在AVCapture框架中調節視頻捕獲幀速率
- 2. 如何在Mono Android應用程序中創建速率應用程序按鈕
- 3. 如何查看我的應用的幀速率?
- 4. 我如何獲取並更改OGRE應用程序的幀率?
- 5. 在ffMpeg中調整幀速率MPG4
- 6. Android Preveiw幀速率查詢
- 7. windows手機應用程序幀速率提高
- 8. 如何在android中自動調用我的應用程序
- 9. 如何讓我的CPU調控器在Android應用程序中?
- 10. 如何在設備中調試我的android應用程序
- 11. SKVideoNode幀速率
- 12. wpf應用程序的幀速限制?
- 13. 應用程序幀率不穩定
- 14. Android上Irrlicht的低幀速率
- 15. AVAssetExportSession中的幀速率或比特率?
- 16. 如何設置opengl android 1.6(API 4)應用程序的固定幀率?
- 17. 如何設置CCAnimation的幀速率
- 18. 如何在我的Android應用程序中啓動android應用程序?
- 19. 我的Android應用程序在我的Android應用程序
- 20. 數據速率和幀速率屬性
- 21. 我如何在我的eclipse中調試遠程應用程序
- 22. 如何使用我的Android手機在Linux中調試我的應用程序?
- 23. facebook android在我們的應用程序中快速集成
- 24. 估計幀速率
- 25. 如何在我的應用程序中的Android應用
- 26. 如何從我的Android手機應用程序調用Foursquare應用程序?
- 27. 如何在NexusOne上調試我的Android應用程序
- 28. 如何在我的Android應用程序調整這些TextViews
- 29. 如何在Wileyfox Swift上調試我的Android應用程序?
- 30. 幀速率放慢Android相機