我想在HTML5画布中检查两个精灵之间的碰撞。因此,为了讨论,假设两个精灵都是IMG对象,并且碰撞意味着alpha通道不为0。现在,这两个精灵都可以围绕物体中心旋转,但除此之外没有其他变换,如果这使得问题更容易解决。
现在,我想到的显而易见的解决方案是:
我想知道是否有更简单的解决方案来检测碰撞。
现在,我想到的显而易见的解决方案是:
- 计算两者的变换矩阵
- 找出应该测试代码的大致估计区域(例如两个偏移量+计算的额外旋转空间)
- 对于相交矩形中的所有像素,变换坐标并测试在计算位置(四舍五入到最近的邻居)处的图像的alpha通道。然后在第一次命中时中止。
我想知道是否有更简单的解决方案来检测碰撞。