Java中矩形和图像之间的碰撞检测

时间:2019-02-27 00:04:32

标签: java android image collision-detection rectangles

我为Android开发了一个简单的游戏,其中玩家需要躲避黑色矩形并在它们之间移动外星人。示例:

我实现了一些非常基本的冲突检测,基本上只包含一行代码:

public boolean playerCollide( RectPlayer player ) {
    return Rect.intersects(rectangle, player.getRectangle()) 
        || Rect.intersects(rectangle2, player.getRectangle());
}

为清楚起见,播放器是绘制在矩形上的位图,每个障碍(行)都由两个黑色矩形组成。

这种碰撞检测方法相对便宜且容易,但存在一个问题:

如您所见,由于玩家是一个矩形,因此当图像的透明像素与障碍物碰撞时,游戏也会检测到碰撞。

我的问题是,如何升级碰撞检测,使其仅在玩家的非透明像素撞到障碍物时才检测碰撞?

0 个答案:

没有答案