투사체-벽면 충돌을 구현하려고 합니다.


투사체는 원형의 충돌범위를 가지고 있고, 벽면은 정사각형의 충돌범위를 가지고 있습니다.


한 프레임당 투사체는 속도 만큼의 길이를 지닌 직선으로 표현되므로, 사각형과 선분의 최단거리를 구하여 투사체가 지형과 충돌하는지를 검사하려 합니다.


지금 생각하는 방법은 사각형의 선을 연장하여 만든 십자가 영역을 벗어나는 직선의 경우, 연장선과 직선의 두 교차점중 짧은 교차점을 반지름으로 하는 해당 방향의 사각형 모서리에 위치한 원을 그리고, 원을 통과하는 직선영역의 중앙점에서 모서리로 선을내리면 그 선이 최단거리라는 방식인데, 이러면 충돌에 쓰일만큼 효율적인 연산이 이뤄지지 않는다고 생각해서 다른 방법이 있는지 질문올립니다.





1. 투사체와 지형과의 충돌을 구현하는 방법으로 사각형과 선분의 최단거리를 구하는것이 효과적인가요?


2. 최단거리를 구하는 방법으로 위 방법이 적절한가요? 만일 그렇지 않다면 적절한 방법에는 무엇이 있을까요?


3. 기존 게임에서는 투사체의 충돌을 어떻게 구현하나요?