0

我是 Cocos2d、Box2d 和游戏开发的新手,但我已经阅读了很多教程,至少在游戏设置和工作上有一个良好的开端......

我现在需要开始向图层添加更多身体,并且需要检查并查看我的主头像是否以及何时会与其中任何一个发生碰撞..

常识似乎告诉我,我添加的物体越多,我添加的案例就越多,例如检查夹具 1 是否与夹具 2 发生碰撞会在某些时候使处理器陷入困境。

随着尸体数量的增加,是否有任何最佳实践和/或有效算法可以使这些检查随着时间的推移更加有效?

任何链接或方向将不胜感激!谢谢你!

4

2 回答 2

0

您可以使用 QuadTree 来划分场景并获取需要检查的实体列表。(有很多文章展示了 QuadTree 的工作原理,只需 google 即可:D)

如果这对你来说有点复杂。然后你可以尝试将你的场景分成许多网格,并根据它们的 2d 位置制作一个循环以将它们放入它们的网格中。然后只需检查每个网格中的物体。它比普通循环快得多。

http://i.stack.imgur.com/W5cBT.png

于 2011-09-21T12:16:26.633 回答
0

从 iOS 7 开始,您可以使用 Sprite Kit 来处理碰撞:

https://developer.apple.com/library/ios/documentation/GraphicsAnimation/Conceptual/SpriteKit_PG/Physics/Physics.html#//apple_ref/doc/uid/TP40013043-CH6-SW14

于 2013-09-28T02:18:55.440 回答