◎ LOD ( Level of Detail )
- 가까운 물체는 자세히, 먼 물체는 희미하게 보이는 현실 원리를 컴퓨터 그래픽에 적용
- 지형 뿐만이 아닌 모든 오브젝트에 적용 가능
- 다양한 알고리즘이 존재
- 정적 LOD ( Static LOD), 동적 LOD(Dynamic LOD)
- 지형처리 기법의 대부분은 동적 LOD를 사용 ==> 캐릭터 포현에도 동적 LOD가 많이 사용됨
◎ 정적 LOD (Static LOD)
- 기존의 LOD 표현방법
- 전처리기 과정에서 미리 각 물체마다 LOD 생성
- 런터임시, 거리에 따라 알맞은 LOD선택하여 가시화
:: 카메라에서 일정단계를 나누어 좋고 출력
- 실시간 LOD 생성 불필요
ㅇ 정점 : 하드웨어 연산 상대적으로 적음
- 전처리 과정에서 하드웨어를 실시간 렌더링에 적합한 구조 LOD생성
ㅇ단점 : LOD 사이의 팝핑 현상
- 그래픽이 튀어 보임
◎ 동적 LOD (Dynamic LOD)
ㅇ 최근 LOD 표현 방법
- 전처리 과정 : LOD를 위한 자료 구조 형성
- 런타임 : 원하는 단계의 LOD로 실시간 압축 / 해제
ㅇ 장점
- LOD 단계가 세분화 될수록 부드러운 전이 가능 ==> 팝핑 현상 해결
- 점진적인 전송
- 시점 종속적 LOD ( View-dependent LOD)
◎ CLOD
- 해골책의 LOD 방식
- 시간, 거리에 따라 연속적으로 정밀도가 변경되는 방법
- 대표적으로 하이트맵(또는 하이트필드)를 이용한 지형렌더링에서 사용
- 폴리곤 자체의 폴리곤수를 동적으로 조절하는 용도로 사용
- 매 프레임마다 원래 있던 버텍스와 사라지는 버텍스 사이에 갭 존제( Poping)
- Poping 현상을 보간해주는 것을 첨가하면 Geomorphing CLOD가 된다.
설명)
그림으로 보자면
0번 프레임에서부터 카메라가 점점 다가가는 예제를 생각해보죠...
frame 0 ~ 9
---- : Low Polygon
frame 10
/\
/ \ : High Polygon
0번 프레임에서 9번 프레임 까지는 Low Polygon인 상태였는데
10번프레임으로 이동할때 갑자기 버텍스가 생기면
그걸 바로보는 우리 눈은 그걸 놓치지 않죠...
그 간격이 크면 클수록 더 어색하게 보일테구요...
그래서 0번 프레임에서 10번 프레임으로 이동하는 사이에
가운데 버텍스의 높이를(지형 예군요 ^^) 보간해서
갑자기 튀어보이지 않게 처리해 주는겁니다...
출쳐 ) http://www.gpgstudy.com/forum/viewtopic.php?p=9162&sid=fd3644683ce92998539053d3fde8e490
참고 및 자세한 내용은
'[ C/ C++ 프로그래밍 ] > [ 외부 지형 ]' 카테고리의 다른 글
컬링 (0) | 2010.06.28 |
---|---|
쿼드 트리 (2) | 2010.06.28 |