在OpenGL中处理顶点的最佳技术?C++

Pla*_*oks 7 c++ opengl rendering-engine vertex

我正在为Quake实现一个地图渲染器.我目前正在运行顶点数组并一次发送一个顶点数组.有人告诉我,通过使用顶点数组,我可以通过批量发送顶点来大大加快渲染过程.现在,我刚刚查看了显示列表,最后查看了VBO或顶点缓冲区对象.VBO提到了与客户端/服务器通信相关的巨大优势.如果我只是在开发客户而不是服务器,VBO仍然适用于我正在做的事情吗?

目前在OpenGL频谱中使用哪些游戏进行快速顶点处理?

Pet*_*der 10

当他们说"客户/服务器"通信时,他们不是在谈论互联网.

  • 客户端= CPU
  • Server = GFX硬件

这是两个独立的硬件.虽然它们(通常)连接到同一主板,但它们仍然需要相互通信.显卡通常无法访问主板上的主内存,因此需要将顶点(以及纹理,索引等)实际发送到图形设备.

短篇小说:使用顶点缓冲对象.对于静态数据(如Quake map),没有比这更好的了.顶点被发送到图形设备(服务器)一次并保持在那里.当您通过顶点(使用类似的东西glBegin(GL_TRIANGLES))绘制顶点时,顶点会在每个帧上发送,正如您可以想象的那样,效率非常低.