본 페이지는 s-ilent의 Occlusion Culling을 번역한 문서입니다.

Occlusion Culling(오클루젼 컬링)

오클루젼 컬링과 너

들어가기 전

본 문서는 스태틱 오브젝트(Static Object)와 다이나믹 오브젝트(Dynamic Object)에 대한 이해가 필요합니다.

이 가이드의 목표

오클루젼 컬링은 잘못 이해되기 쉽고, 복잡한 주제입니다. 이 가이드에서는 오클루젼 컬링을 어디에, 언제 써야 하는지 이야기합니다.

오클루젼 컬링의 기본

유니티 씬 안에서의 오클루젼(Occlusion)은 공간을 더 작은 청크(Chunk)를 나눈 데이터 값입니다. 각 섹션에서는 그 섹션에서 보여야 할, 아니면 보이지 말아야 할 것이 기록되어 있습니다. Unity는 이 데이터를 활용해서 어떤 물체를 렌더링할지, 아님 말지 결정합니다.

잠깐, 오클루젼 컬링이 보이는 것에만 적용되나요?

맞습니다. 오클루젼 컬링은 렌더링 하는 것만 막습니다. 다른 프로세싱은 그대로 적용되기 때문에, 만일 큰 공간을 여러 섹션으로 나누어야 한다면, 해당 파츠를 비활성화해서 성능을 최적화 할 수 있습니다.

오브젝트에 어떻게 적용되나요?

오클루젼 컬링은 스태틱 오브젝트(static object, 정적 오브젝트, 월드 자체)와 다이나믹 오브젝트(dynamic object, 동적 오브젝트, 플레이어, 픽업 등)를 따로 처리합니다.

유니티는 스태틱 플래그(Static flag)를 사용해 오브젝트가 어떻게 오클루젼에 반응하는ㄷ지 결정합니다. 오클루젼을 크게 세 가지를 생각합니다.