쉐이더: 그래픽 데이터의 음영과 색상을 계산하여 다양한 재질을 표현하는 방법
렌더링 파이프라인
1) 오브젝트 데이터 받아오기
2) 정점(Vertex) Shader
3) Rasterizer
4) Pixel Shader / Fragment Shader
책보다 자세히 렌더링 파이프라인을 추가로 더 살펴보면,
3D 오브젝트를 배치하면 각 정점(vertex)을 계산해 CPU에서 정점 데이터를 GPU로 넘겨줌
-GPU-
1) local space
로컬 좌표계(오브젝트 좌표계)에
2) world space
월드 변환 행렬을 곱해주고
3) view space (카메라 공간)
카메라 행렬을 곱해준다.
↓
4) backface culling
5) 조명(lighting)
6) 클리핑(clipping)
7) 투영(projection)
프로젝션 행렬을 곱해준다. (원근감 부여)
8) view port
뷰의 모습으로 보여짐(출력x)
↓
9) rasterize
래스터라이져(Rasterizer)를 통해 화면에 출력
↓
10) Pixel Shader / Fragment Shader
픽셀 파이프라인을 거쳐 특수효과들을 연산해 픽셀의 색상 결정
↓
11) 출력