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.
我有一个 VBO,其中存储了两个不同的对象。对象 A 由顶点、颜色和纹理坐标组成。对象 B 由顶点和颜色组成。
现在我在这里尝试做的是使用键盘按钮在两个模型之间切换。到目前为止,我已经设法隔离了第一个模型,但是我在试图找到一种告诉 glDrawArrays 第二个模型开始和结束位置的好方法时遇到了问题。谁能帮我这个?
据我了解,您希望隔离/使用存储在单个 VBO 中的不同模型。
使用:glDrawArrays(mode, first, count);
glDrawArrays(mode, first, count);
我猜你计算错了first,count记住你需要使用每个面使用的多个顶点数量first。count如果模式是,GL_TRIANGLES则每个面的顶点数量为 3。
first
count
GL_TRIANGLES
然后你想这样称呼它:
glDrawArrays(mode, faces_to_skip * 3, count_faces_to_use * 3);
请记住,count是总大小,而不是大小/偏移量first