我有子彈和怪物遊戲,其中我需要時,他們使用矩形相撞然而,當發生碰撞的方法沒有返回,釋放子彈和怪物真矩形碰撞檢測工作不
這裏是我做過什麼: 我設置邊界爲每個子彈/怪物
bounds.left = (int)X;
bounds.top = (int)Y ;
bounds.right = (int)X + monsterWidth;
bounds.bottom = (int)Y + monsterHeight;
然後由布爾方法
return bounds.intersect((int)X,(int) Y ,(int) X + monsterWidth, (int) Y + monsterHeight);
我有此BOU NDS兩個,然後我打電話給他們的gamethread
int i=0, j=0;
while (!monster.isEmpty() && monster.size()>i){
j=0;
while (!bullets.isEmpty() && bullets.size()>j){
if(monster.get(i).isColliding(bullets.get(j).getBounds())){
Log.v("collided", "Collided!");
monster.get(i).setRelease(true);
bullets.get(j).setRelease(true);
}
j++;
}
i++;
}
我對每對邊界和他們兩人的日誌是正確的左< =右上< =底部但是在iscolliding方法 沒有日誌。我試過了(左,上,右,下)但仍然一樣。
它應該是軸對齊(不旋轉)直接進行碰撞檢查? – Bisder
是的,它是軸對齊相交只用於旋轉矩形? – NoobMe
我不確定,因爲我從來沒有使用它,我只是做了我自己的相交檢查方法,我在下面向你展示。檢查出 – Bisder