DirectX Graphics 프로그래밍 가이드 고정 기능 파이프라인 정점 처리와 픽셀 처리   [목차열람] [주소복사] [슬롯비우기]
정점 처리와 픽셀 처리
 
Microsoft DirectX 9.0

정점 처리와 픽셀 처리


지오메트리의 고정 기능에 의한 지오메트리 파이프라인을 실행하는 것은, Microsoft® Direct3D® 의 변환 엔진이다. 이것은, 월드내의 모델과 뷰어를 검출해, 스크린상에 표시할 수 있도록(듯이) 정점을 투영 해, 정점을 뷰포트에 잘라낸다. 또, 변환 엔진은, 조명 계산을 실행해 각 정점의 디퓨즈 성분과 스펙큐러 성분을 결정한다.

지오메트리 파이프라인은, 정점을 입력으로서 받는다. 변환 엔진은, 정점에 3 개의 변환 (월드 변환, 뷰 변환, 및 투영 변환)을 적용해, 결과를 잘라내, 그 모든 것을 래스터라이저에 건네준다. 다음 그림은 일련의 스텝을 나타내고 있다.

변환 파이프라인

파이프라인의 최초의 단계에 있어 변환은 적용되지 않고, 모델의 정점은 모두 로컬 좌표계 (이것은 로컬 원점의 좌표계)에 대해서 선언된다. 이 좌표계를 일반적으로모델 공간이라고 불러, 각각의 로컬 좌표는모델 좌표라고 부른다.

지오메트리 파이프라인은, 최초로 로컬 좌표계의 모델의 정점을, 장면(scene)의 모든 개체로 사용하는 좌표계에 변환 한다. 정점을 다시 다시 하는 것 를,월드 변환이라고 부른다. 이 새로운 방향은, 보통은월드 공간으로 불려 월드 공간의 각 정점은,월드 좌표를 사용해 선언된다.

다음에, 3D 월드를 기술하는 정점을 카메라에 대한 상대 위치 좌표로 다시 정의한다. 즉, 애플리케이션은 장면(scene)의 시점 (카메라의 위치)을 선택해, 월드 공간은 시점의 위치와 방향에 맞추어 재정의된다. 즉, 월드 공간이카메라 공간에 변환 된다. 이것이뷰 변환이다.

다음의 단계에서는,투영 변환을 한다. 파이프라인에 있어서의 이 단계에서는, 보통, 먼 개체보다 가까이의 개체가 크게 보이도록(듯이) 하는 등, 뷰어로부터의 거리를 기준에 개체가 스케일링 되어, 장면(scene)에 깊이가 태어난다. 알기 쉽게 하기 위해서, 이 문서에서는, 투영 변환 후의 정점이 존재하는 공간을,투영 공간이라고 부르기로 한다. 그래픽스 관련의 서적에서는, 투영 공간을, 원근 보정 후 동차 공간이라고 부르는 경우도 있다. 모든 투영 변환에 의해 장면(scene)의 개체의 사이즈가 스케일링 된다고는 할 수 없다. 이러한 투영은, 아핀 투영 또는 정사영이라고 부르기도 한다.

파이프라인의 마지막 단계에서는, 스크린상에서 안보이는 정점이 모두 삭제된다. 이것에 의해, 래스터라이저는, 안보이는 개체에 관해서 색과 쉐이딩의 계산을 실행할 필요가 없어진다. 이 처리는 클리핑이라고 부른다. 클리핑이 완료 하면, 나머지의 정점은 뷰포트 파라미터에 따라 스케일링 되어 화면 좌표계에 변환 된다. 그 결과, 이러한 정점 (장면(scene)가 래스터화 되었을 때에 스크린에 표시된다)는스크린 공간에 존재하게 된다.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP