OpenGL骨架动画表现

Ale*_*rty 2 c++ opengl optimization skinning

我有点情况.

你看,当用我的renderMesh()函数渲染我的模型时,游戏大约是30fps.渲染到显示列表并运行时,fps大约为450fps.多达1500%的收益.我对此感到非常高兴,因为这意味着OpenGL不是滞后的原因,它是功能,可以优化.

但是现在我想渲染一个蒙皮网格,所以我需要更新每帧的顶点位置,但没有别的.因此,运行renderMesh()会浪费时间,因为将所有面修补等的开销是不必要的.我想缓存这些数据,但由于易失性顶点坐标,显示列表不起作用.

什么是最好的解决方案(除了优化我的renderMesh(),我将继续做).

Jam*_*mes 5

我只能建议:

  1. 使用更少的顶点
  2. 将您的顶点(或大多数顶点)移动到刚性组中 - 这样每个组都可以是一个列表
  3. 顶点缓冲对象