那麼如何?我的應用程序運行在60FPS,但我想30如何使用opengl將FPS設置爲30?
0
A
回答
4
假設你有一個目標幀速率,可以測量多久它一直以來你完成渲染的最後一次。從那裏,你可以睡覺targetMsPerFrame - timeElapsed。
+0
+1同意。如果你的目標幀率是30fps,你的targetMsPerFrame是(1000/30)毫秒。 – LarsH 2010-10-20 15:59:30
3
3
看看WGL_EXT_swap_control或GLX_EXT_swap_control擴展,關於您的操作系統。這是用來控制VSync,但應該是有用的呈現一半你的顯示器刷新率。
0
@itzWarty有關於如何設置幀率的正確答案。這被稱爲「夾緊」或「鎖定」幀速率。
但是你爲什麼要這樣做呢?如果你想避免佔用資源,夾緊幀率是好的。
否則,您可能希望儘可能快地調整幀速率,以使具有優質聲卡的人覺得他們不會浪費金錢。在這種情況下,您需要使您的動畫基於時間而不是基於幀。即根據自上一步以來經過的時間來縮放動畫步驟。例如。
x += dx * (timeNow - timePrev)/typicalDuration; // pseudoCode
相關問題
- 1. 如何讓遊戲的FPS(使用OpenGL)達到800 FPS
- 2. 如何使用OpenGL/SDL將鼠標控制爲像FPS一樣的攝像頭?
- 3. 如何在Android上使用FFMPEG APIs以30 fps提取幀?
- 4. OpenGl ES,android FPS
- 5. 使用UIProgressView將進度條設置爲30分鐘
- 6. FPS遊戲和OpenGL
- 7. 爲BorlandC++設置Opengl
- 8. 如何計算OpenGL中的FPS?
- 9. 你如何顯示與opengl的fps(android)
- 10. android opengl將位圖設置爲精靈
- 11. 如何將實時視頻提要設置爲OpenGL RenderTarget或framebuffer?
- 12. OpenGL,如何將單色紋理設置爲彩色形狀?
- 13. 如何將計數器再次設置爲30,並將其停止在0?
- 14. 如何設置30秒超時? NSURL
- 15. 我該如何設置Time.zone = GMT + 05:30
- 16. iPad OpenGL ES FPS太慢了!
- 17. gstreamer視頻在720p和25/30 fps
- 18. 日期設置爲默認'1999-11-30'
- 19. SDL2和OpenGL,強制禁用Vsync的FPS?
- 20. 如何在Android中將最大縮放級別的Google地圖設置爲30?
- 21. 在Qlikview中將趨勢圖設置爲「過去30天」
- 22. 將高度設置爲高度30%的parrent高度的100%?
- 23. 如何使用IIS Express將項目設置爲NOT使用SSL
- 24. 如何使用CSS將div的位置設置爲這樣?
- 25. OpenGL VBO設置
- 26. 爲什麼FPS在試圖獲得60時顯示30?
- 27. 使用C++和Visual Studio 2008設置OpenGL
- 28. Cocoa和OpenGL,如何使用數組設置GLSL頂點屬性?
- 29. 如何在C++中使用XCode 4.2設置OpenGL項目?
- 30. 將NSTextField設置爲使用NumberFormatter爲空
經常畫一半(嚴重)。對於更詳細的答案,你可能會考慮提供更多的信息,比如你使用的是什麼框架(比如過剩)。 – Seth 2010-10-20 06:02:09
60fps最有可能與顯示器刷新率同步。爲什麼*不*你想要那個? – AshleysBrain 2010-10-20 07:23:16
我同意塞思。與環境的交互不是GL的職責範圍,而是平臺綁定的一部分(wgl/glx/egl/...)。你在看哪一個? – Bahbar 2010-10-20 07:28:34