所以我正在制作一个游戏,当玩家(这是一个三角形火箭)击中一个飞向你(一块石头)的物体时游戏结束。我一切都运作良好,但我的问题是火箭是一个三角形,但图像视图是一个矩形。因此,如果图像视图的边缘接触到岩石,即使实际的火箭没有碰到物体,游戏也会结束。那么基本上我怎么能让岩石图像视图不能识别火箭图像视图中哪些是空的呢?基本上是三角形的图像视图。
感谢您的帮助。如果您需要更多信息或想要查看我让他们碰撞的代码,请告诉我。
答案 0 :(得分:0)
分析地显示具有3个点的三角形和具有中心和半径的岩石然后找到并实现检查这2个形状之间的命中测试的算法。或者使用适当的混合将两个形状绘制到某些图形上下文中并检查重叠像素(例如,将一个绘制为红色,将另一个绘制为绿色,并查看是否存在红色和绿色的像素)您实际上可以使用2个图像执行此操作在第3个不可见视图上添加了这些颜色和.5f alpha的视图,但是您需要从视图中获取图像,然后遍历所有像素。在任何情况下,只有在相应的视图框重叠后才进行此检查。