我正在尝试弄清楚OpenGL中不同技术的优缺点。我阅读的教程表明,在渲染大量VBO时会有性能问题,我推断可以采用将多个物体存储到一个单独的VBO中的方法。
是否有任何好的经验法则来组织和渲染数据?对于现代视频游戏(例如“现代战争”),如果我在观看具有天空背景、几个静态建筑、许多碎片和10个NPC的场景,他们创建了多少个VBO,以及您认为他们在执行多少次glDrawArrays()调用?
是否有任何好的经验法则来组织和渲染数据?对于现代视频游戏(例如“现代战争”),如果我在观看具有天空背景、几个静态建筑、许多碎片和10个NPC的场景,他们创建了多少个VBO,以及您认为他们在执行多少次glDrawArrays()调用?
glBufferData
视为malloc
+memcpy
。这里的问题是“如何在GPU内存中排列我的数据”,包括“是否交错属性”。请参考OpenGL wiki:顶点规范最佳实践获取更多详细信息。 - Kos