我有一個簡單的問題,檢查內存中的整數值還是要求opengl做一些簡單的事情,比如使用程序,還是綁定紋理? 我正在寫着色器管理器類,只是想知道是否有任何差異,從我的角度來看,它看起來像檢查整數以避免不需要的調用更便宜。Opengl Es 2.0着色器管理器
1
A
回答
2
避免不必要的管線狀態變化總是一件好事,我可以想象檢查整數值將比製作glUseProgram調用便宜。在渲染時只需要「程序一致性」,所以大多數時候你都不會同時執行(check和glUseProgram)。我也建議你閱讀本指南http://developer.apple.com/library/ios/#documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008793-CH1-SW1。它會幫助您優化。
1
優化代碼的最佳方法之一就是避免儘可能多的OpenGL/DX函數調用。所以在大多數情況下,只檢查一個局部變量應該比使用openGL代碼更好。
有時OpenGL會與CPU同步執行一些代碼:像glGetTexImage,getPixels等......這會嚴重影響性能。
當談到'使用程序'或'綁定紋理'我不確切知道成本是多少。這取決於規格和設備實施。
相關問題
- 1. OpenGL ES 2.0着色器最佳實踐
- 2. 從OpenGL ES 2.0着色器返回值
- 3. iOS OpenGL ES 2.0着色器的限制
- 4. PowerVR SGX535着色器性能(OpenGL ES 2.0)
- 5. OpenGL ES 2.0修改着色器變量
- 6. OpenGL ES 2.0點光源着色器
- 7. OpenGL ES 2.0等離子着色器
- 8. FAUX HDR opengl ES 2.0着色器算法
- 9. OpenGL ES 2.0中的着色器Android
- 10. opengl es 2.0加速着色器效果
- 11. opengl es 2.0 - 優化片段着色器
- 12. OpenGL ES 1.x着色器
- 13. 的OpenGL ES着色器多紋理
- 14. 使用OpenGL ES 2.0着色器的平滑紋理線條
- 15. 用於圖像處理的OpenGL ES 2.0着色器示例?
- 16. OpenGL ES 2.0 SL從片段着色器寫入紋理
- 17. 如何在OpenGL ES 2.0着色器中處理NaN或inf
- 18. OpenGL ES 2.0和GLKit:從GLKBaseEffect着色器到OpenGl
- 19. OpenGL ES和OpenGL兼容着色器
- 20. OpenGL ES 2.0中片段着色器的非均勻顏色值
- 21. 將顏色應用於Fragment着色器中的OpenGL ES 2.0 Point Sprite紋理?
- 22. iPhone openGL ES 2.0紋理 - 爲片段着色器設置多個紋理
- 23. Android 2.3 - 不能編譯openGL 2.0 ES片段着色器
- 24. OpenGL ES 2.0:glGetAttribLocation返回-1。着色器優化?
- 25. 使用着色器的光滑點OpenGL ES 2.0
- 26. 將結構數組傳遞到OpenGL ES 2.0着色器中
- 27. Opengl es 2.0自定義着色器低fps(android)
- 28. OpenGL ES 2.0:屬性沒有綁定在頂點着色器
- 29. X射線頂點着色器的OpenGL ES 2.0
- 30. openGL ES 2.0着色器內置/支持哪些屬性?