Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用存储在名为 CMesh 的类的对象中的 OpenGL 渲染几个网格。一个 CMesh 包含很多由 CVertex 对象和三角形表示的顶点。每个 CVertex 都包含一个 Vector 及其位置。 由于顶点位置在渲染过程中不断变化,因此每次渲染网格时我都必须重写我的 VBO 数据数组。尽管与其他大型游戏相比,我没有那么多顶点,但这会极大地减慢整个程序。 有一个更好的方法吗?
使用变形目标或至少使用带有多个骨骼的蒙皮网格。这比手动更新每个顶点要好得多
假设您使用的是 GL_STATIC_DRAW,您可以将其更改为使用 GL_DYNAMIC_DRAW,它不应该同样减慢程序的速度。或者,计算对象在 GPU 上的新位置也是一种值得研究的可能性。