您认为在2D环境中描述用于碰撞检测的算法或技术的最佳资源(书籍或网页)是什么?
我只是渴望学习不同的技术来制作更复杂,更高效的游戏.
碰撞检测通常是两阶段过程.某种"宽相"算法,用于确定两个对象是否有可能重叠(试图避免n ^ 2比较),然后是"窄相"碰撞检测算法,该算法基于应用程序的几何要求.
对于经历相对物理运动的物体而言,Sweep和Prune是一种成熟的高效宽相算法(适用于您的应用的少数几种变体)(快速移动或具有大不相同的区域和边界区域可能使这种情况不适合).该子弹库中有参考3D实施.
窄相位碰撞通常可以像"CircleIntersectCircle"一样简单.Bullet库再次具有良好的参考实现.在3D土地上,当任意物体需要更精确的探测时,GJK是目前的作物之一 - 据我所知,没有任何东西可以阻止它适应2d(但它最终可能比粗暴强迫你的所有边缘慢; )
最后,在进行碰撞检测后,您经常需要某种碰撞响应. 方框2d是物理响应解决方案的良好起点.