DirectX Graphics 프로그래밍 가이드 Direct3D 의 기초지식 렌더링 포그(안개:fog) [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
3D 장면에 포그(안개:fog)를 추가하는 것으로써, 보다 리얼한 정경을 표현하거나 분위기를 내거나 먼 경치를 애매하게 할 수가 있다. Microsoft® Direct3D® 는, 픽셀 포그(안개:fog)와 정점 포그(안개:fog)라고 하는 2 개의 포그(안개:fog) 모델을 지원 한다. 이 2 개는, 각각 고유의 기능과 프로그래밍 인터페이스를 갖는다.
포그(안개:fog)는, 기본적으로는, 장면(scene)내의 개체의 깊이 또는 시점으로부터의 거리에 근거해, 장면(scene)내의 개체의 색과 선택한 포그(안개:fog)색을 블렌드 해 실현된다. 개체가 멀어지는에 따라, 원의 색에 대한 포그(안개:fog)색의 블렌드가 늘어나, 장면(scene)에 떠오르는 작은 입자에 의해 개체의 표시가 노망나 간다. 다음 화면은 포그(안개:fog)없이 렌더링 한 장면(scene)와 포그(안개:fog)를 유효하게 해 렌더링 한 같은 장면(scene)를 나타내고 있다.
위의 그림에서 좌측의 장면(scene)에는 명료한 수평선이 있어, 저 너머에는 열매 세계에서는 보여야할 풍경이 안보인다. 우측의 장면(scene)에서는 배경색과 동일한 포그(안개:fog)색을 사용해 수평선이 애매하게 해져 다각형이 먼 곳에서는 사라지는 것처럼 보인다. 개별의 포그(안개:fog) 이펙트와 크리에이티브인 장면(scene) 디자인을 조합하면 장면(scene)내의 개체의 색을 완화시켜 분위기를 늘릴 수가 있다.
Direct3D 로 장면(scene)에 포그(안개:fog)를 추가하려면 , 2 개의 방법이 있다. 픽셀 포그(안개:fog)와 정점 포그(안개:fog)이다. 이러한 이름은, 각각의 포그(안개:fog) 이펙트의 적용 방법을 나타내고 있다. 더 자세한 정보는, 「픽셀 포그(안개:fog)」 및 「정점 포그(안개:fog)」를 참조할것. 간단하게 말하면, 픽셀 포그(안개:fog) (테이블 포그(안개:fog)라고도 한다)는 장치 드라이버로 처리 되어 정점 포그(안개:fog)는 Direct3D 조명 엔진으로 처리 된다. 포그(안개:fog)를 처리 하려면 정점 셰이더를 사용한다. 필요에 따라서, 픽셀 포그(안개:fog)를 동시에 처리 할 수도 있다.
여기에서는, 포그(안개:fog) 기능을 소개해, Direct3D 애플리케이션에서의 각종 포그(안개:fog) 기능의 사용법에 대해 설명한다. 설명하는 내용은 다음과 같다.
포그(안개:fog) 혼합은, 렌더링 스테이트로 제어된다. 프로그래밍 가능한 픽셀 파이프라인의 일부에서는 없다.