2015-02-24 36 views
0

我有一个绘制缓冲区和一个相同长度的变换反馈缓冲区(比如1000个顶点),但绘制缓冲区并不是连续的 - 例如我感兴趣的数据是索引0-100和900-1000。现在我宁愿不处理额外的800个顶点或进行两次绘制调用,所以我使用glMultiDraw *将两个范围一起批量处理。我还没有找到说明如果变换反馈将被类似填充(索引0-100和900-1000中的数据),浓缩为连续节(0-100,101-201)或其他完全相同的文档。有谁知道发生了什么,或者在文档中指定了这种行为?变换反馈和glMultiDrawArrays之间的相互作用?

回答

0

转换反馈存储基元。对于您在glBeginTransformFeedback/glEndTransformFeedback块中呈现的每个基元,它将按顺序将其中的每个顶点写入绑定的反馈缓冲区。它没有索引概念,并且从更高级的绘制模式(GL_LINE_STRIPGL_TRIANGLE_STRIP等)生成的基元被分解为最基本的基元类型:GL_POINT,GL_LINEGL_TRIANGLE

更多阅读:https://www.opengl.org/wiki/Transform_Feedback

相关问题