渲染管道的阶段

时间:2013-08-15 01:54:54

标签: opengl-es opengl-es-2.0

我有一个问题,必须在2天内完成:

  

考虑渲染管道的各个阶段,如果你有一个低   FPS,在你的脑海中,哪个阶段将首先出现在你的脑海中   是你问题的根源?

任何人都可以帮助我理解,或者给我一些线索,

谢谢,

1 个答案:

答案 0 :(得分:1)

需要考虑的事项:

  • 绘制调用:你使用glBegin / glEnd,调用glVertex几千次?或者你使用的glDrawArrays太多了?也许你从sys内存到GPU每帧都发送太多数据?
  • 顶点着色器:你有简单的顶点着色器还是复杂的,将其更改为简单的着色器并检查fps ...是更好还是更低?
  • 片段着色器:纹理读取次数,if语句,指令复杂度。更改窗口的分辨率并检查fps。
  • 缓冲区使用:您是在GPU上使用缓冲区,还是将所有内容从mem转移到gpu mem?尝试使用1x1纹理来检查性能。
  • 工具:使用工具执行测量:geDebugger,glIntercept等...

还有其他的东西(可能我忘了列出更多):几何着色器,tesselation,但首先检查上面的列表。

一般来说:衡量,衡量,衡量:)