답변:
쿼드 트리의 요점은 많은 양의 데이터를 효율적으로 컬링하여 바로 인근에있는 데이터에만 시간을 보내도록하는 것입니다. 그러나 2D 배열은 이미 위치 별 랜덤 액세스를 제공하므로 쿼드 트리를 중복시킬 수있는 2D 게임의 경우입니다. 3D 게임에서는 배열을 사용하여 모든 것을 찾을 수 없으며 쿼드 트리 (또는 더 나은 옥트리)가 편리한 곳입니다.
이제 레벨의 기본 데이터 표현에 대해 이야기하겠습니다. 그래픽 아키텍처 설정 방법 (예 : 3D 엔진에서 평면으로 2D 그래픽 수행)에 따라 그래픽 컨텐츠를 효율적으로 컬링하기 위해 장면 그래프에서 쿼드 트리를 사용할 수 있습니다.
그리고 레벨에서 다양한 적과 다른 대화 형 개체를 잊지 마십시오. 아마도 2D 배열을 사용하여 레벨의 타일을 관리하지만 쿼드 트리를 사용하여 모든 대화식 요소 (예 : 물리 엔진)를 구성합니다.
이 방법으로 생각하십시오 : 레벨에서 무작위로 점을 선택한 다음, 해당 점의 1000 픽셀 반경 내의 모든 것을 파악하는 데 얼마나 많은 작업이 필요한지 생각해보십시오. 모든 것이 2D 배열의 위치별로 구성되어 있기 때문에 신속하게 수행 할 수 있다면 쿼드 트리가 필요하지 않습니다. 그러나 모든 것을 반복하고 각 객체의 거리를 개별적으로 확인 해야하는 경우 쿼드 트리를 사용하여 훨씬 효율적으로 검색 할 수 있습니다.