我在谷歌上搜索了很久,但仍然找不到任何有用的信息。我想做一个简单的贪吃蛇或者像“收集金币”的2D图形游戏,但如果硬币是一个图形,移动的角色也是一个图形,怎么检查角色是否碰到了硬币呢? 我被难住了。你有什么好的建议吗?
我在谷歌上搜索了很久,但仍然找不到任何有用的信息。我想做一个简单的贪吃蛇或者像“收集金币”的2D图形游戏,但如果硬币是一个图形,移动的角色也是一个图形,怎么检查角色是否碰到了硬币呢? 我被难住了。你有什么好的建议吗?
对于一个简单的实现,让所有精灵都由Rectangle2D对象支持,并使用intersects方法测试碰撞。 注意,这非常简陋!
是的,这是经典的拾取和选择问题。在这里解释有点长,请阅读http://download.oracle.com/javase/tutorial/2d/advanced/user.html。而且,最简单的方法是使用contains(MousePoint) .
我想不出使用图形包来完成这个任务的任何方法;此外,我认为这是你应该在模型中而不是在图形中完成的事情。
你正在研究的问题通常被称为“碰撞检测”。有许多不同的方法可以解决这个问题;在网上寻找一些指南会很有用。然而,我认为一个简单的方法是将每个对象(硬币、蛇等)看作一个矩形,使数学计算变得非常简单。圆形(对于硬币)也不应该太难。