SceneKit SCNGeometryElement TriangleStrip与三角形

时间:2016-12-08 10:41:52

标签: scenekit

我绘制了一个包含SCNGeometryElement对象的场景。 (这是一个地形。我每个网格项目有2个三角形) 为了优化,我决定用TriangleStrip重新设置我的三角形原语。 但它没有给我相同的结果

我的顶点阵列是连续4点:

C  D
A  B

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

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

有什么想法吗?

由于

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

1 个答案:

答案 0 :(得分:2)

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

或者,您可以使用Swift友好型SCNGeometryElement(indices:primitiveType:)(另请参阅this post)。