我正在使用OpenGL在Qt中编写关卡设计工具(有关示例,请参见 Valve 的 Hammer,因为我主要为此设计源游戏)并且目前已经编写了一些类来表示 3D 对象(顶点、边、面)。我计划实现一个“对象”类,它将三者联系在一起,跟踪它自己的顶点等。
在阅读了http://open.gl上的渲染多边形之后,我有几个关于渲染内容的最有效方式的问题。请记住,这是一个关卡编辑器,所以我预计需要渲染大量具有任意形状和顶点/面数量的对象。
编辑:更新为不那么广泛。
- 什么时候是创建 VBO 的最佳点?Qt OpenGL 示例在初始化视口时创建了一个 VBO,但我希望为每个视口创建关闭是低效的。
- 关于提交的答案,为几何创建一个 VBO,为网格模型创建另一个 VBO 等是否明智?如果/当 VBO 溢出时会发生什么?