嘿,我目前正在寻找在 2D 视频游戏中实现碰撞响应的各种方法,类似于 Metanet 的教程:N Tutorial我希望在 XNA 中实现一些东西,但任何语言都可以。我对比较感兴趣以编程方式实现 比实际理论。我更喜欢初学者友好的 Material ,但我确实欢迎更多高级主题。
那么有人可以推荐一些好的 2D 碰撞响应文章/书籍吗?
(PS:我对响应比检测更感兴趣)
最佳答案
N tutorial你提到的已经是一个很好的资源。我也推荐一篇很好的文章2D Polygon Collision Detection .它带有一个很棒的 C# 实现和使用分离轴定理的多边形碰撞检测示例,并更好地解释了一些概念。
至于对碰撞的响应,它取决于场景。对于游戏,您可能希望根据当前速度检查可能的碰撞,然后简单地调整实际速度以防止碰撞。您还可以实现某种“反弹”效果。在任何情况下,它都可能同时调整物体的速度和方向。
您可以使用分离轴定理进行碰撞检测,也可以使用多边形投影在特定轴上找到与目标的距离。 (大部分时间是您移动的向量)。
关于collision-detection - 良好的 2D 碰撞响应引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3251561/