【问题标题】:SceneKit – Apply a Force in the Direction of SCNNode is facingSceneKit - 在 SCNNode 面对的方向上施加力
【发布时间】:2017-07-28 19:33:29
【问题描述】:

我有一个 ARKit 应用程序,其中有一个汽车模型。我想对汽车所面对的方向施加力。

func accelerate() {           
    // force should be applied in the direction.
    let force = SCNVector3(0,0,-1)
    self.physicsBody?.applyForce(force, asImpulse: true)
}

func turnRight() {
    self.physicsBody?.applyTorque(SCNVector4(0,1.0,0,-0.1), asImpulse: true)
}

func turnLeft() {      
    self.physicsBody?.applyTorque(SCNVector4(0,1.0,0,0.1), asImpulse: true)
}

加速功能是我需要实现的功能,因此我可以将力施加到正确的方向。

【问题讨论】:

    标签: ios scenekit augmented-reality arkit


    【解决方案1】:

    您应该在汽车前面添加一个不可见节点作为汽车的子节点。这样它就不会移动,并且您将始终在车前有一个参考点。

    【讨论】:

      【解决方案2】:

      使用此代码继续前进:

      node.physicsBody?.velocity += force
      

      【讨论】: