이 캐릭터를 사용한다고 가정 해 봅시다.
(출처 : iconbug.com )
충돌 감지를 어떻게 구현 하시겠습니까? 새의 모양이 사각형 근처에 없기 때문에 경계 상자를 사용하는 것은 좋은 근사치가 아닌 것 같습니다.
이미지의 일부를 나타내는 객체 안에 일종의 쿼드 트리 데이터 구조를 가지고 있다고 생각했습니다. 각 잎은 false
(조류 외부의 흰색 / 투명 공간을 덮는 경우) 또는 true
(조류의 부리, 눈 등을 나타내는 경우) 일 수 있습니다. 그런 다음 장면 에서 조류와의 충돌 에 대한 유일한 장애물을 테스트 하십시오 .
그러나 내 접근 방식의 내 문제는 다음과 같습니다.
- 쿼드 트리를 초기화하는 방법을 모르겠습니다.
- 쿼드 트리가 초기화되면 장애물이 이미지의 좌표 내에 있으면 횡단 및 사용 방법을 잘 모르겠습니다.
비평 방 문자로 충돌 감지를 어떻게 수행 하시겠습니까?
LE : 내가 본 다른 접근 방식은 여러 경계 상자를 사용하는 것입니다. 예를 들어 부리에는 하나 또는 몇 개의 경계 상자가 있고 머리카락이나 꼬리에는 몇 개가 있습니다. 그러나 지루할 수 있습니다. 이것이 내 경우에 유효한 접근 방법이라면 어떻게 경계 상자를 생성합니까? 내 프로그램에서 하드 코딩해야한다고 의심합니다.
LE2 : 상당히 정확한 충돌이 중요합니다. 단일 경계 상자 또는 원이 적어도 그 모양과 대략적으로 비슷한 방법을 상상할 수 없으므로이 방법은 효과가 없습니다.