나는 Libgdx에서 직사각형에 대한 충돌 감지를 찾고/만들려고했지만 어디에도 갈 수없는 것처럼 보입니다. 저는 폭과 높이가 64 인 버킷이라고 불리는 사각형과 너비와 높이가 64 인 벽이라는 사각형을 가지고 있습니다. 플레이어가 사각형을 지나치지 않고 벽에 붙지 않고 계속 움직일 수 있도록하기 위해 노력 중입니다. 페이징 또는 랜덤 텔레포트. 내 방법은 1 블록이있을 때 작동하지만 그 이상이있을 때는 그냥 깨지고 작동하지 않습니다.Libgdx 장방형 벽 충돌
나는이 방법이 못생긴 것을 알고 있지만, 누군가가 올바른 방향으로 날 지점 또는 나에게 도움이 될 몇 가지 코드를 공유 할 수 있다면 나는 매우 감사 할 것입니다 단지 실험
private void checkCollisions(Rectangle bucket, Wall wall){
if(bucket.overlaps(wall.getRectangle())){
if(bucket.x > wall.getRectangle().x - 64 && bucket.x < wall.getRectangle().x - 55){
//collision with right side
bucket.x = wall.getRectangle().x - 64;
}
if(bucket.x < wall.getRectangle().x + 64 && bucket.x > wall.getRectangle().x + 55){
//collision with left side
bucket.x = wall.getRectangle().y + 64;
}
if(bucket.y < wall.getRectangle().y + 64 && bucket.y > wall.getRectangle().y + 55){
//collision with top side
bucket.y = wall.getRectangle().y + 64;
}
if(bucket.y > wall.getRectangle().y - 64 && bucket.y < wall.getRectangle().y - 55){
//collision with bottom side
bucket.y = wall.getRectangle().y - 64;
}
}
}
입니다.