OpenGL은 표준 x,y축을 사용하며, 오른쪽을 x방향 + 그리고 위쪽을 y방향으로 함께 사용한다.
3D에서 우리는 다른 차원이(z 차원) 필요하다. z 방향 +는 스크린을 나가는 방향이다.

glutSwapBuffers(); //Send the 3D scene to the screen
이 라인은 OpenGL이 실제로 윈도우의 장면을 움직이게 만든다. 우리는 이것을 호출할 때마다 우리의 장면을 그리는 것을 완성할 수 있다.
투영에는 직교투영과 투시투영(glFrustum(),gluPerspective())이 있다.
gluPerspective()는 직관적으로 파악하기 쉬운 편이다.
gluPerspective(fovy, (double)w / (double)h, near, far);

glMatrixMode (GL_PROJECTION); //행렬 모드를 투영을 사용을 한다구 지정한다.
//GL_MODELVIEW :행렬 연산이 모델 관측 스택에 적용된다.(장면 상에서 물체를 이동할 때 사용)
//GL_PROJECTION :행렬 연산이 투영 행렬 스택에 적용된다.(클리핑 공간을 정의할 때 사용)
//GL_TEXTURE :행렬 연산이 텍스쳐 행렬 스택에 적용된다.(텍스쳐 좌표를 조작)
은면제거(Hidden Surface Removal)이다. 처음 물체를 그렸는데 그리고 나서 다른 물체는 더 앞에 위치한 물체로 표현을 했는데도 여전히 처음 물체가 뒤의 물체를 가린다는 것이다. 이 문제를 보완하기 위해서는 z버퍼(깊이 검사)라는걸 수행을 하여 관측자로부터 물체가 얼마의 z축의 음의 방향을 향하는지 알아 보면 된다.
이걸 수행하는 함수는 glEnable(GL_DEPTH_TEST)이다.
http://www.videotutorialsrock.com
'작업 > opengl' 카테고리의 다른 글
| Lesson 5: Textures (0) | 2012.07.25 |
|---|---|
| Lesson 4: Lighting (0) | 2012.07.05 |
| Lesson 3: Color (0) | 2012.07.05 |
| Lesson 2: Transformations and Timers (0) | 2012.06.29 |
| 설치환경셋업 (0) | 2012.06.22 |
main.cpp