在SceneKit中我创建了一个框并希望沿y轴平移它,但我希望所有变换到该框的节点(平移,旋转,缩放)不会影响几何体的原始平移。如何使用SCNNode完成此操作?
答案 0 :(得分:2)
使用SCNNode
- > SCNNode
- > SCNGeometry
双重包裹对象相当简单。
let planeBox = SCNBox(width: 50.0, height: 50.0, length: 1.0, chamferRadius: 0.0)
planeBox.firstMaterial?.diffuse.contents = UIColor(white: 0.0, alpha: 1.0)
let planeNode = SCNNode(geometry: planeBox)
planeNode = SCNMatrix4MakeTranslation(0.0, 50.0, 0.0)
let wrappingNode = SCNNode()
wrappingNode.addChildNode(planeNode)
scene.rootNode.addChildNode(wrappingNode)
然后对wrappedNode的所有后续更新将与原始翻译隔离。