티스토리 뷰

고려대학교 정보대학 컴퓨터학과 2019년 1학기 <컴퓨터그래픽스> 7강 래스터라이저(2)

 

강의영상 플레이리스트 [Link]

강의자료 [Link]

 

 

Books · media lab

Introduction to Computer Graphics with OpenGL ES Review and Recommendations 이 책의 영문 제목 “Introduction to Computer Graphics”를 “A Painless Introduction to Computer Graphics”라는 닉네임으로 바꿔서 부르고 싶다. 수학을

media.korea.ac.kr


컴퓨터그래픽스 래스터라이저(2)

Keywords

  • viewport
  • screen space
  • viewport transform
  • fragments
  • linear interpolation
  • bilinear interpolation
  • normal interpolation

 

Viewport

viewport transform에서의 "viewport"란 무엇일까?

* 컴퓨터 스크린에 있는 윈도우 -> window space, screen space

* viewport = scene이 projection 되는 직사각형 screen space

* screen space = 3D 공간, 따라서 viewport = 3D 공간

  * depth(z-axis)가 존재한다

  * 왼손좌표계를 따른다

 

 

[Recap]

object space -> world transform -> world space

world space -> view transform -> camera space

camera space -> projection transform -> clip space

clip space -> viewport transform -> screen space

* clip space 왼손좌표계 & screen space 왼손좌표계

 

 

Viewport Transform

* clip space에서 정의된 (폭, 깊이, 높이)가 (2,2,2) 정육면체 공간 속 폴리곤 오브젝트를 (w, h, z) screen space에 있는 폴리곤 오브젝트로 변환

  1. scaling -> 2. translation

 

* 통상적으로 minZ -> 0.0, maxZ -> 1.0, minX -> 0.0, minY -> 0.0 세팅하며,

따라서 viewport transform 행렬식은 아래와 같아진다

 

 

Scan Conversion (=bilinear interpolation)

* 스캔 컨버전: 각각의 삼각형 폴리곤을 fragment 셋으로 나누는 작업.

  1. 각 삼각형이 차지하는 픽셀 영역을 확인한다.

  2. 각각의 픽셀 위치에 대하여 normals, texture coordinates 등 vertex attributes를 보간(interpolate) 한다.

 

[보간 프로세스] -> Bilnear interpolation

y축을 따라서 선형보간 + x축을 따라서 선형보간

* 선분을 따라 선형 보간 : scan line(수평 단위선)을 한 단위씩 올리면서 선분과 겹치는 부분만 한정

* y 증가에 따른 x, R의 증가(=기울기)를 계산

* y 1단위 증가에 따라 scan line과 교차되는 선분의 점에 대해, 변화하는 x, R값과 함께, 시작값(ex. \(R_1=90\)) 및 끝값(ex. \(\R_3=146)) 을 이용하여 선형보간

* 동일한 방식으로, scan line을 따라서 x값에 대응되는 R 변화량을 이용하여 수평 보간 (시작값, 끝값은 y 수직축 기준 변화량을 이용해 구해줌)

 

 

Normal Interpolation

* 꼭지점(vertex)마다 할당된 3차원 normal 좌표 \((n_x, n_y, n_z)\)에 대해 수행하는 bilinear interpolation

* 2차원 좌표로 구성되는 texture coordinates에 대한 보간도 동일 방식으로 수행된다

* 이렇게 보간 처리된 normal, texture coordinates 정보를 fragments라고 부른다.

  -> fragments는 해당 픽셀의 색상 정보를 결정하기 위하여 사용된다.

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함