【发布时间】:2012-10-10 09:29:20
【问题描述】:
我正在尝试在我的 iOS 游戏中使用 Bullet Physics。该引擎似乎已正确编译,因为演示工作正常。
在我的游戏中,我有玩家的船和一些敌方的船。它们被定义为 btRigidBody 对象和 btCollisionObjects,我使用 btSphereShapes 进行碰撞。
在“快”的速度下,碰撞似乎很容易发生 - 事情发生碰撞,没有什么“奇怪”的。如果速度非常慢并且玩家的船碰到了一个不动的物体,碰撞就会发生,但是在接下来的几帧中,玩家的船会以难以置信的速度移动,并且看起来距离碰撞的地方很远——完全不成比例撞击前的移动速度。
为了移动物体,我在每一帧都使用 setLinearVelocity(),勾选物理引擎,然后使用 getMotionState() 更新我拥有的渲染代码。
问题的一部分可能是我不太了解如何设置正确的质量或用于任何事情的最佳速度。我主要是坚持数字,看看会发生什么。
我应该以这种方式使用 Bullet,是否有任何确定物体质量的准则? (我是否正确地假设在碰撞中较重的物体会迫使较轻的物体移动更多)
【问题讨论】:
标签: ios collision-detection game-physics bulletphysics