0

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

4

1 回答 1

0

变换反馈存储原语。对于您在glBeginTransformFeedback/glEndTransformFeedback块中渲染的每个图元,它将按顺序将其中的每个顶点写入绑定的反馈缓冲区。它没有索引的概念,从更高级的绘制模式( 、 等)生成的图元GL_LINE_STRIPGL_TRIANGLE_STRIP分成最基本的图元类型:GL_POINTGL_LINEGL_TRIANGLE

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

于 2015-02-25T00:06:49.103 回答