Graphics And Media/OpenGL

렌더링 파이프라인의 좌표 공간과 좌표 변환

kahuz 2021. 8. 12. 13:49

 

렌더링 파이프라인의 좌표 공간과 좌표 변환

 

OpenGL에서 3D Object가 렌더링을 거쳐 화면에 뿌려지는 과정

렌더링 파이프라인의 좌표 공간과 좌표 변환의 과정

  1. World transform ( model matrix )
    • model space : 하나의 객체( model, object )를 모델링하는데 사용되는 좌표 공간
    • world space : 각각의 model space에 표현된 객체들을 하나의 공간에 표현하기 위해 통합된 좌표 공간
    위 내용을 바탕으로 world transform 이란 물체가 화면 상에 어떻게 표현될지 결정하는 과정이라는 것을 알 수 있다. 예를 들어 객체가 보여질 화면에서 어디로 이동하여 위치할지, 축소 시킬지, 변환할지 등.

  2. view transform ( view matrix ) view transform은 world space의 전체 공간(3D 공간)에서 화면상 보여줄 일부 공간(2D 공간)을 표현하기 위한 과정이다. 화면상에 보여지는 공간을 view space 혹은 camera space라고도 한다.

  3. 3D 공간상 객체를 2D 화면에 보여주기 위해 가상의 카메라로 촬영을 한다고 생각해보자. 이 때, view transform은 카메라의 위치와 카메라의 각도(바라보는 시선)을 정하는 과정이다.

  4. projection transform ( projection matrix ) view transform을 통해 결정된 view space에서 디스플레이에 "투영" 시킬 공간을 결정하는 단계이다. view transform에서 카메라의 위치, 각도와 같은 요소를 결정했다면 projection transform에선 화면의 줌인/줌아웃과 카메라 렌즈를 결정하는 과정이다. 즉, 카메라로 3D 공간을 얼만큼 촬영할 것인가 결정되는 부분이다.

    이 공간을 clip space라 표현하는데, 이는 3D 공간에서 화면에 보여주는 영역만을 잘라내기(clip) 때문이다.

 

'Graphics And Media > OpenGL' 카테고리의 다른 글

OpenGL 3D Object file  (0) 2021.07.18
Projection by W  (0) 2021.07.03
Getting started OpenGL ES with EGL  (0) 2021.05.10