DX 그래픽스 파이프라인

2015. 7. 11. 17:10프로그래밍/3D

728x90
728x90

서론

그래픽스 파이프라인이란?

3차원 이미지를 2차원 래스터 이미지로 표현하기 위한 단계


*래스터란? 

컴퓨터에서 화상 정보를 표현하는 한 가지 방법

이미지를 2차원 배열 형태의 픽셀로 구성하고, 이 점들을 조합하여 화상 정보를 표현하는 것.


DX9 그래픽스 파이프라인


정점 정보

변형되지 않은 모델의 정점들을 정점 메모리 버퍼에 저장한다.


프리미티브 정보

점, 선, 삼각형, 폴리곤들을 포함하는 기하학적 데이터들을 인덱스 버퍼와 정점 정보에서 참조한다.


세분화

폴리곤을 효율적으로 생성/노출 시키는 기술로 폴리곤의 수를 조절함으로써 그래픽의 품질은 높이고 하드웨어에는 보다 적은 부하를 주도록 유도하는 기술이다.


정점처리

정점 버퍼에 저장된 정점들을 변환한다.


기하처리

정점에 속성값을 참조하여 클리핑, 후면제거, 래스퍼 등을 적용한다.


텍스쳐 표면

텍스쳐의 정보를 IDirect3DTexture9 인터페이스를 통해서 공급한다.


텍스쳐 샘플러
텍스쳐 정밀도(Level of detail)에 따라 텍스쳐의 값을 변화 시킨다.

*텍스쳐 정밀도
단계에 따라 디테일을 다르게 표현하는 기술
정적 LOD - 연산이 간단하여 속도가 빠르지만, 미리 정보를 가지고 있기에 메모리 낭비가 있다.
동적 LOD - 자연스럽게 LOD가 이루어 지기 때문에 Popping현상이 없고, 낭비되는 메모리가 없지만 상대적으로 느리다.

픽셀 처리
입력된 정점 및 텍스쳐 데이터 등을 사용하여 출력할 픽셀 색상 값을 산출해낸다.

픽셀 그리기
최종적으로 화면에 출력하는 단계로 알파 블렌딩, 포그, 알파 테스트, 깊이 테스트, 스텐실 테스트등을 
적용하여 모든 픽셀을 화면에 출력한다.


728x90
반응형

'프로그래밍 > 3D' 카테고리의 다른 글

유니티 프로젝트 두 개 나오게 하기(for mac)  (0) 2015.08.02
유니티 웹 빌드해서 블로그에 올리기  (2) 2015.07.29
유니티 숏컷  (0) 2015.07.23
Mono Behaviour  (0) 2015.07.18
스크립트 라이프 사이클  (0) 2015.07.13
Script Execution Order  (0) 2015.07.07
Unity 설정(BSD 스타일로 바꾸기)  (0) 2015.06.30