在代码中复制通过Scenekit编辑器创建的物理实体

时间:2018-06-30 04:12:24

标签: swift scenekit

我一直在寻找,但是找不到如何复制我在Scenekit编辑器中创建的物理物体以快速编写代码。我希望围绕我的dae模型创建一个简单的球体形状。这是Scenekit编辑器选项的屏幕快照。 谢谢

enter image description here

此代码似乎对我有用,但我不确定它是否是最佳代码:

ball = scene.rootNode.childNode(withName: "ball",recursively: true)!
let ballRadius = CGFloat(ball.boundingBox.max.x)
let ballShape = SCNSphere(radius: ballRadius)
ball.physicsBody = SCNPhysicsBody(type: .dynamic, shape: SCNPhysicsShape(geometry: ballShape, options: [SCNPhysicsShape.Option.type:SCNPhysicsShape.ShapeType.convexHull]))

1 个答案:

答案 0 :(得分:0)

通过将SCNPhysicsBody初始化程序中的shape属性设置为nil,它将自动为物理物体定义形状。如果您的形状只是一个球,它应该自动将物理身体形状设置为正确大小的球体。