유니티(Unity)의 오쿨루전 컬링(occlusion culling)과 프러스텀 컬링(frustum culling)

유니티(Unity)의  오쿨루전 컬링(occlusion culling)과 프러스텀 컬링(frustum culling)

https://docs.unity3d.com/Manual/OcclusionCulling 

오쿨루전 컬링(occlusion culling)은 다른 오브젝트에 의해 가려진 오브젝트가 카메라에서 보여지지않을때 해당 오브젝트 렌더링을 불능화시키는 기능으로 드로우콜을 감소시키고 게임의 퍼포먼스를 향상시킬수있습니다. 오쿨루전 컬링은 3D 컴퓨터 그래픽스에서 자동으로 일어나지않습니다. 왜냐하면 대부분의 경우 카메라에서 가장 먼 오브젝트가 먼저 그려지고 더 가까운 오브젝트들은 그 위에 그려지기때문입니다(오버드로우) 

 

프러스텀 컬링(frustum culling)
오쿨루전 컬링은 프러스텀 컬링과 구별됩니다. 프러스텀 컬링은 오직 카메라 시야 범위에서 벗어난 오브젝트의 렌더러만 불능화시키고 오버드로우에의해서 시야에서 가려진 어떤것들도 불능화시키지않습니다. 프러스텀 컬링은 자동적이며 항상 기능하고있습니다. 오쿨루전 컬링을 사용할때 프러스텀 컬링 또한 기능하고있습니다. 레벨의 씬 뷰에서 프러스텀 컬링에 의해 시야 범위 내의 오브젝트만 렌더링되는것을 확인할수있습니다. 

 

 

오쿨루젼 컬링 데이터 생성과 런타임 기능

오쿨루젼 컬링을 사용하려면 에디터에서 씬에 대한 데이터를 생성해야합니다(베이킹) 이 프로세스에서 잠재적으로 가시적인 오브젝트들의 세트들에 대해 계층 구조를 구축하기위해 가상의 카메라가 씬을 검토합니다.

생성한 데이터는 런타임에서  무엇이 가시적이고 그렇지않은지 확인하기위해 카메라(오쿨루전 속성 활성화된)에 의해 사용된다.  만약 오브젝트들이 더 가까운 오브젝트들에의해 완전히 가려진다면 오큘루전 컬링은 카메라 렌더링워크에서 부가적인 오브젝트들을 제거합니다. 

 

댓글

Designed by JB FACTORY