基本 2d 碰撞检测
我可以在哪里阅读有关游戏或具有一定交互性的应用程序的基本 2D 碰撞检测的更多信息?
编辑:Canvas 游戏的 javascript 怎么样?
Where can I go to read more about basic 2d collision detection for games or just applications that have some interactivity?
Edit: How about javascript for Canvas games?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最重要的定理是分离轴定理(SAT)。基本上,它允许您检测两个凸多边形之间的碰撞。 这里有一份很好的阅读材料。
如果您的游戏仅涉及凸形状,那么
sat.js
是一个不错的选择。但是,如果您需要处理凹形状,则需要其他算法。您可以将一个凹形分解为多个凸形,
poly-decomp.js
可以为您做到这一点。如果您想深入了解,这篇论文非常有趣。
The most important theorem to know is the Separating Axis Theorem (SAT). Basicly, it allows you to detect collision between two convex polygons. A good reading material is here.
If your game only concerns with convex shapes, then
sat.js
is a decent choice.However, if you need to work with concave shapes, you need to other algorithms. You can decompose a concave shape into several convex shapes,
poly-decomp.js
can do it for you.This paper is very interesting if you want to dive deeper.