Mar*_*ram 14 opengl vertex-buffer
我想在创建VBO后更新对象的顶点列表.我已经看到了两者glBufferSubData并且glMapBuffer它们似乎都做了类似的事情,这意味着我现在不确定使用哪一个.
我的伪工作流程是:
创建对象
开始顶点更新(使用data = nullptr调用glBufferData)
更新对象的顶点
结束顶点更新(采用更新的顶点和调用glBufferSubData或glMapBuffer)
Cal*_*602 22
两者都有效.
如果您打算经常更新顶点(每一帧左右),我建议避免使用glBufferSubData,这需要在驱动程序中再添加一个memcpy.glMapBuffer/glMapBufferRange通常会让你获得更多的性能.
如果你很少更新,glBufferSubData就可以了.
另见OpenGL Insights的第28章(免费:http://openglinsights.com/)
| 归档时间: |
|
| 查看次数: |
11608 次 |
| 最近记录: |