我真的雄心勃勃,正在开发一款 2D 射击游戏,希望它能有数百个实体跑来跑去。
让我绞尽脑汁的是,子弹在与物体发生碰撞时如何检测,而不是检查 map 上的每个物体。原因是我觉得如果我在屏幕上有四打子弹,每个循环都检查与 map 上每个实体的碰撞,我会看到一些相当显着的性能损失。
那么在不检查每个实体的情况下检测碰撞的最佳方法是什么?
当我有两个对象时,我可以处理碰撞算法,但我似乎无法找到一种方法让这两个对象在不先检查其他对象的情况下相互看到。
我在 Java 和 OpenGL 中使用(即将进行纹理处理)QUADS。
最佳答案
你应该调查quadtrees ;它们通常用于高效的 2D 查找。
关于java - 如何在不检查每个对象的情况下检查 2D 碰撞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10392335/