[랜더링 Pipe Line 복습]
Object Space 에서 정의된 Triangle Mesh를 이루는 Vertex Shader 들이 있었다.
이를 변환해서 Clip Space Position 을 출력해서 다음단계인 Rasterizer 에게 넘겨줍니다.
Rasterizer는 이 Clip Space Position들을 조립해서 삼각형으로 다시 만듭니다.
삼각형이 스크린에 나타날 것이고 ( 나타난다 : 스크린의 픽셀들을 몇개들을 점유하면서 색을 보여준다는 뜻)
픽셀 위치마다 Fragment 라는 것을 정의한다. (Fragment Shader 프로그램이 하는일)
나머지 단계에서 컬러값들을 생성한다. (Output Merger)
[앞으로 Reterizer의 5단계의 중요한 것들을 배울것이다]
Clipping -> Perspective division -> Back-face culling -> Viewport transform -> Scan conversion
[1단계. Clipping]
Clip Space로 왔다는 것은 Clip 하겠다는 것이다.
삼각형 중에 안보이는 것을 자르겠다는 것.
Camera Space에서 안보이는 것을 버리고 (t1),
완벽히 보이고 (t2),
조금만 보인다 (t3) -> 가위질(clipping) 해야한다.
[t3삼각형 Clipping 하는 예제]
[2단계. Perspective Division]
Projection Transform : Camera Space에서 Clip Space로 옮기는 변환이었다.
원래는 0,0,0,1 을 사용해야 하는데, 왜 0,0,-1,0 을 사용하나요?
'ComputerGraphics [고려대학교_한정현]' 카테고리의 다른 글
[Learn OpenGL 번역] 2-8 시작하기 - 좌표시스템 (0) | 2023.04.18 |
---|---|
6강 OpenGLES 1 (0) | 2023.04.11 |
Android + OpenGLES로 삼각형 그리기 (0) | 2023.04.02 |
Android + OpenGLES로 사각형 그리기 (0) | 2023.04.02 |
5강(1) - 랜더링 과정 중에서 View Transform ( World Space -> Camera Space 변환) (0) | 2023.03.26 |