Pop*_*nel 2 macos ios scenekit swift
我正在尝试学习如何在SceneKit中创建自定义几何体.但是,我试图制作一个三角形并且它没有显示任何东西.我不知道如何调试这个.有没有办法弄清楚三角形是否有效?我只是不知道从哪里开始.
作为参考,有问题的游乐场代码如下.请注意,它是针对Swift 4编写的,但Swift 3和Swift 4之间的变化非常小,以至于在Swift 3中编译它是微不足道的.
import UIKit
import SceneKit
let points = [
SCNVector3Make(0, 0, 0),
SCNVector3Make(0, 10, 0),
SCNVector3Make(10, 0, 0),
]
let indices = [
0,2,1,
]
let vertexSource = SCNGeometrySource(vertices: points)
let element = SCNGeometryElement(indices: indices, primitiveType: .triangles)
let geo = SCNGeometry(sources: [vertexSource], elements: [element])
Run Code Online (Sandbox Code Playgroud)
创建自定义SCNGeometryElements时,索引的类型必须为Int161.我不认为这记录在任何地方.但是当你改变索引的声明时也是如此
let indices: [Int16] = [
0, 2, 1
]
Run Code Online (Sandbox Code Playgroud)
应该出现三角形.
编辑
1:正如@mnuages所指出的,SceneKit仅支持32位整数作为索引.所以你可以使用Int8,Int16和Int32.
| 归档时间: |
|
| 查看次数: |
521 次 |
| 最近记录: |