我正在开发AR游戏,我需要在场景中添加一个节点,该节点将跟随cameraNode
。
我试图将该节点附加到cameranode的层次结构中:
self.sceneView.pointOfView?.addChildNode(node)
该节点确实跟随相机,但它的物理体不会随着它移动,因为我看到在调试模式下运行应用程序。
self.sceneView.debugOptions = [ARSCNDebugOptions.showWorldOrigin, SCNDebugOptions.showPhysicsShapes]
我应该如何添加节点来执行这两个条件?:
答案 0 :(得分:0)
对于关注相机的节点,您需要使用SCNDistanceConstraint
和SCNLookAtConstraint
。
了解他们here。
还可以使用SCNPhysicsVehicle
类来模拟运动行为的真实物理。
了解它here。
答案 1 :(得分:0)
一切都变得容易了。如果你想在摄像机后面添加一个带有physicalBody的节点,你应该把它添加到cameranode层次结构中,就像我之前做的那样,但是(重要的)你应该使它的身体运动类型。
let body = SCNPhysicsBody(type: .kinematic, shape: SCNPhysicsShape(node: node))
现在它完美无缺