如何解决使用 sceneKit 对 SCNnode 施加恒定力
我正在尝试使用 ARKit 和 SceneKit 制作飞行无人机模型。
现在我可以成功地将无人机放置在一个表面上,模拟碰撞结束检测基地和无人机之间的接触。
现在我想尝试飞行这架无人机,施加一些恒定的力! (我不想简单地移动 Y 轴来向上移动无人机)但我想模拟一种将它拉起来的力,就像现实生活中发生的那样。
我开始写一些代码,一旦按下向上按钮就调用这个方法..
// hit test and find object with specific name
func applyForceToDrone() {
print("tapped apply force drone at position ")
let nodo = arrayDrone[0] // return the scnNode of the Drone in the scene
let force = SCNVector3(0,15,0)
print("appply force")
nodo.physicsBody?.applyForce(force,asImpulse: false)
}
这段代码的结果是每次我按下向上按钮时无人机都会上下跳跃。 但是这个力需要在时间内保持恒定......
如何持续施加力使无人机保持在空中?我如何解决这个问题的任何提示......
我找不到任何对物体施加恒定力的例子。
感谢您的帮助。
解决方法
您必须在循环函数之一内施加力。为此,定义一个变量 var applyForce=false。然后在例如 buttonUp 触摸开始时,设置 applyForce=true,在触摸结束时设置 applyForce=false。然后在循环函数内:如果 applyForce 然后施加力。你必须调整力量的大小。您也可以添加更多参数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。