在Android中,我使用SurfaceView來顯示簡單的2D遊戲。位圖(.png)與 alpha(代表遊戲對象)繪製在畫布上。在Android的SurfaceView的畫布上使用位圖進行碰撞檢測
現在我想做一個簡單而準確的碰撞檢測。檢查這些位圖是否重疊很容易。
但是,當這些位圖有透明區域時,如何檢查碰撞?我的挑戰是檢測兩個球是否碰撞。它們在寬度和高度上填充整個位圖,但是在所有四個邊緣中,當然有透明區域,因爲它是方形中的圓形。
只有當球真的相撞,而不是他們周圍的位圖框時,檢測那裏碰撞的最簡單方法是什麼?
我是否必須儘可能在球的輪廓上存儲儘可能多的點的座標?或者Android在檢查碰撞時是否可以「忽略」alpha通道?
非常感謝!對於球例如,這可能是完美的解決方案。我應該提到我希望能有更通用的解決方案(例如,按像素檢測),但這是我的錯。 – caw 2012-03-24 13:53:22