我有一个简单的问题,检查内存中的整数值还是要求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着色器内置/支持哪些属性?