Upload
mingeun-park
View
2.007
Download
10
Embed Size (px)
Citation preview
GPG 1 권 .4.8
오브젝트 오클루젼 컬링( 가려진 객체의 제외 기법 )
2011. 02. 19 초중급 게임 개발자 스터디데브루키
박민근 ( 알콜코더 )
오클루젼 컬링이란 ?
Occlusion Culling앞의 오브젝트에 의해서 가려진 뒷면에 존재하는 오브젝트를 컬링하는 기법
전형적인 오클루젼
Why Occlusion Culling?
동적 오브젝트 ( 애니메이션 , 이동 ) 의 컬링에도 적용할 수 있다
실내뿐만 아니라 , 실외에서도 활용 가능하다
* 이 챕터에서는 전형적인 오클루젼 컬링을 다룬다 .
프러스텀 컬링
프러스텀 컬링 (Frustum Culling)
시야에서 제외된 오브젝트를 컬링
프러스텀 컬링의 기본 구현은 오클루젼 컬링에도 그대로 적용된다 .
프러스텀 컬링 구현
1. 오브젝트의 바운딩 스피어를 시야 공간으로 변환
2. Z 값을 이용하여 근단면 , 원단면 밖의 오브젝트를 제거한다 .
3. 좌우 평면 사이에 있는지 계산한다 .
4. 상하 평면 사이에 있는지 계산한다 .
오클루젼 컬링
시점 – 오클루젼 사각형으로 오클루젼 영역을 구성한다
이 프러스텀 영역에 들어가면 보이지 않는 객체이다
원단면은 프러스텀 컬링에서 제외 된다 .
시점 공간에서 가장 가까운 오클루젼 Z 값을 찾는다 .
그리고 이값보다 앞에 있는 오브젝트에는 컬링을 적용할 필요가 없다
오클루전 영역을 구성하는 5 개의 평면의 방정식을 구한다 .
5 개의 평면과 오브젝트의 바운딩 스피어와의 거리를 계산한다(* 프러스텀 컬링과 거의 동일하다 )
요 약
오클루젼 컬링을 구현하는건 그리 어렵지 않다 .
음성 (Sound) 나 한 모델 내에서 가려지는 객체를 컬링하도록 활용할 수 도 있다 .