我有一艘船,一切都围绕着中心,一切都相对于它运动。这是第一人称射击游戏。现在,当我开火,并且船加速时,它赶上了子弹。我希望物理世界相对于船速移动,以使子弹基本上不受船速的影响。

物理引擎在做正确的事情,但对我的游戏而言却做的不正确。

我还有其他相对于船移动的元素,它们现在可以正确移动,所以不想让船静止不动并移动周围世界中的所有其他东西。我看不到这样做的直接方法,也许有间接方法吗?也许我可以手动接管子弹的位置。我想使用物理引擎的其他部分进行碰撞等,所以不想完全手动进行操作,但是如果那是唯一的选择,那就可以了。

其他人有什么建议吗?

最佳答案

听起来您的子弹正在遭受空气摩擦。这是由物理物体的“阻尼”属性控制的。值1.0将使其静止不动。值为0将使其连续移动而不会停止。根据Apple文档,默认值为0.1。像这样分配节点以消除阻尼(空气摩擦)...

yourNode.physicsBody.damping = 0

关于ios - SceneKit:PhysicsWorld相对于 body ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25051547/

10-11 00:32