swift usesPreciseCollisionDetection不起作用?

时间:2016-08-23 14:52:29

标签: swift sprite-kit detection skphysicsbody

我已经制作了一个应用程序,你需要向敌人射击但有时子弹穿过敌人。 swift sprite kit game when I shoot on a enemy sometimes the bullet goes trough the enemy, how can I fix this?

所以我添加了usesPreciseCollisionDetection = true。 但子弹有时仍然会通过敌人。所以我的问题是我做错了什么或者usePreciseCollisionDetection没有用?

感谢您阅读我的问题,希望有人能帮助我。

2 个答案:

答案 0 :(得分:1)

您正在使用u移动子弹,物理引擎无法按照您希望的方式使用moveTomoveTo将无法执行任何操作

就您的物理世界而言,您的子弹是静止的。你只是扮演上帝并进行某种分子运输来移动物品。

你需要使用像usesPreciseCollisionDetection这样的函数,或者如果你想让它正常工作,你甚至只需要给physicsBody一个速度

答案 1 :(得分:0)

我有类似的问题,即使usesPreciseCollisionDetection设置为true且两个SKPhysicsBody都是矩形,有时也检测不到碰撞。在我的情况下,当我将其中一个SKPhysicsBody改为圆形而不是矩形时,由于某种原因,usesPreciseCollisionDetection开始工作得更好。尝试将你的子弹物理体改为圆形,似乎用圆圈的碰撞检测算法更精确,这样可以帮助你。