SceneKit SCNGeometryElement TriangleStrip 与三角形

SceneKit SCNGeometryElement TriangleStrip vs triangles

我绘制了一个包含 SCNGeometryElement 对象的场景。 (这是一个地形。每个网格项有 2 个三角形) 为了优化,我决定用 TriangleStrip 替换我的三角形图元。 但它并没有给我相同的结果

我的顶点数组是连续的4个点:

C  D
A  B

我的索引数组包含 A、C、B 和 D 的索引 所以当我使用 TriangleStrip 时,场景工具包应该绘制 ACB 和 CBD 三角形。这就是苹果文档中所说的。

我想知道我应该在 primitivecount 中输入什么。我尝试了几件事。它改变了渲染,但我无法检索到我以前使用简单三角形得到的相同结果...

有什么想法吗?

谢谢

let element = SCNGeometryElement(data: buffer_indices , primitiveType: .TriangleStrip, primitiveCount: Int(points_count), bytesPerIndex: sizeof(CInt))

对于三角形条带,primitiveCount 应等于 indexCount - 2

或者您可以使用 Swift 友好的 SCNGeometryElement(indices:primitiveType:) (see also )。