Unity

    [Unity] 2D Tile Map Occlusion Culling

    최근에 프로젝트를 해보면서 2D Tile Map에서 작동되는 Occlusion Culling 을 구현하게 되었다. 카메라에서 일정 구역만 타일을 활성화시켜 성능적으로 이득을 볼 수 있다. 물론 작은 Tile Map에서는 모두 활성화하는 것이 이득이지만 Tile Map이 커질 수록 상당한 이득 볼 수 있을 거라 생각한다. 먼저 정적인 상태에서 Culling 구역을 활성화하는 방법을 생각해보자. 단순히 Tile Map의 모든 타일을 가져온 다음 해당하는 구역에 존재하는 타일만 활성화시키는 방법이다. 모든 타일의 개수를 S라 정의할 때, 시간 복잡도는 \(O(S)\)가 된다. 여기서 전체를 탐색하지 말고 해당하는 구역만 탐색하여 활성화하는 방법을 고민할 수 있다. 전체 Tile Map을 분할 정복으로 해당하는..