오브젝트를 화면에 표기하기 위한 일련의 작업

그래픽스 API 초기화를 먼저 해야함
사용할 데이터를 미리 메모리에 로드
RAM에서 VRAM으로 전송될 데이터

드로우 콜
오브젝트를 한 번 그리는 데, 필요한 명령들의 묶음

정점 조립
정점 버퍼의 요소들을 정점 구조체로 조립

정점 조립 과정은 유니티에서 알아서 처리됨
우리가 직접 해야하는 것
버텍스 셰이더
정점을 입력 받아 다른 형태의 정점으로 변환
3D 공간 상의 정점의 위치를 클립 공간으로 옮기는 것
투영

오브젝트 (모델) 공간
모델 행렬
카메라 공간
카메라의 위치와 방향이 세상의 중심
같은 위치에 있는 물건도, 카메라의 위치에 따라 다르게 보임
매번 카메라의 위치와 회전을 고려하는 것 보다, 카메라는 원점에 두고 오브젝트를 상대적으로 배치 하는 게 간결

투영 행렬
카메라 좌표계의 정점을 카메라의 시야를 기준으로 한 정점으로 옮김
카메라 좌표계의 정점들을 클립 공간으로 옮김
깊이와 원근감을 표현할 수 있게 함

클립 공간
카메라의 시점을 반영한 공간
카메라가 보는 영역(뷰포트)을 직육면체(or 큐브)로 압축한 공간
X, Y의 범위 : ( -1 ~ 1)
Z의 범위 : ( 0 ~ 1)
클립핑
정규화된 기기 좌표계 (NDC)
클립공간과 NDC는 종종 하나로 묶여 설명
뷰포트
원금감이 생기는 이유?
래스터라이저
프래그먼트 셰이더
출력 병합
| --- | --- | --- | --- |