Skip to content

GL PROJECTION

OpenGL 의 렌더링 파이프 안에서 변환이 일어나는 것 중에

  • "아핀 변환" 과
  • "투영 변환" 이

있다.

  • 아핀 변환(affine transformation)은 정점의 이동, 회전, 스케일 등의 변환를 말하며 이 변환의 특징은 변환 후에도 변환 전의 평행성과 비율을 보존해 준다는 것이다.
  • 투영 변환(projection transformation)은 n > m 이라 할 때 n 차원 공간의 점을 m 차원 공간의 점으로 바꾸어주는 변환을 말한다. 3차원의 한 점 p(x, y, z) 를 2차원의 한 점 p'(x, y) 로 변환하는 것을 예로 들 수 있다.

OpenGL 의 렌더링 파이프 라인에서는 "아핀 변환" 에 "투영 변환"이 일어난다.

아핀 변환에 쓰이는 함수는

  • glTranslatef()
  • glRotatef()
  • glScalef()
  • 등이 있으며

투영 변환에 쓰이는 함수는

  • glOrtho()
  • glFrustum() 함수가 있고
  • gluPerspective() 함수는 glFrustum() 함수를 쓰기 쉽게 만들어 놓은 것 이다.

OpenGL 에서의 투영 변환에는 2 가지의 변환이 있으며 하나는 "직교 투영"이고 다른 하나는 "원근 투영"이다.

이 두가지 외의 투영을 하려면 커스텀 투영 행렬을 만들어 현재 투영 행렬 스택에 glMultMatrix() 라는 함수를 이용해서 투영 행렬 스택의 최상단에 올려 놓으면 된다.

See also

Favorite site