공부 기록장 2023. 10. 10. 12:52

● glViewport(x, y, width, height);    

여기서 x와 y는 윈도우 뷰포트원점에서의 x,y 거리를 뜻하고 width와 height는 그리고자하는 폴리곤의 너비와 높이를 뜻한다.

GLUT가 사용하는 화면 좌표계는 화면 좌상단을 원점(0,0)으로 하며 GL이 사용하는 화면 좌표계는 화면 좌하단을 원점으로 삼는다.

따라서 glViewport(0, 0, width, height);  을 하면 화면 좌하단을 원점으로  삼는다.

 

● glClear(GL_COLOR_BUFFER_BIT)   

컬러 버퍼에 초기화색을 가함

즉 화면을 깔끔하게 지워

 

glClearColor (GLClampf red, GLClampf green, GLClampf blue, GLClampf alpha);

배경색 정의 함수

각 인자의 강도는 0~1사이의 실수값, 0이면 하나도 없고, 1이면 최대밝기입니다.

그래서 (1,1,1,1)은 하얀색, (0,0,0,0)은 까만색 입니다.

 

● glColor3f(1.0, 0.0, 0.0);

그래픽 객체의 색상을 지정하는 데 사용됩니다. 이 함수는 3개의 실수 값으로 빨간색(Red), 녹색(Green), 파란색(Blue) 성분을 나타내는 RGB 색상을 설정합니다.

 

● glLineWidth(3.0);

선의 두께

 

● glPointSize(2.0);

점의 사이즈

 

● glBegin(GL_POLYGON)

도형을 그리기 시작한다는 뜻

 

● glVertex3f()

3D 그래픽 객체의 정점(vertex)을 지정하는 데 사용됩니다. 정점은 3D 공간에서 그래픽 객체의 꼭짓점 또는 끝점을 나타냅니다.

 

● glEnd();

도형을 다 정의했다는 뜻

 

● glFlush();

버퍼를 비워 그리기 명령을 그래픽 카드로 보낸다.

 

● glutInit(&argc, argv);

GLUT 라이브러리를 초기화하는 함수입니다.

 

● glutInitDisplayMode(GLUT_RGB);

GLUT 라이브러리를 사용하여 그래픽 애플리케이션을 초기화할 때 디스플레이 모드를 설정하는 데 사용됩니다. 이 함수는 애플리케이션 창의 속성과 특성을 정의합니다. GLUT_RGB를 사용하면 RGB 색상 모드로 디스플레이 모드를 설정하게 됩니다.

 

● glutInitWindowSize(300, 300);

GLUT 라이브러리를 사용하여 그래픽 애플리케이션의 초기 창 크기를 설정하는 데 사용됩니다. 이 함수를 호출하여 창의 초기 너비와 높이를 지정할 수 있습니다.

 

● glutInitWindowPosition(0, 0);

GLUT  라이브러리를 사용하여 그래픽 애플리케이션의 초기 창 위치를 설정하는 데 사용됩니다. 이 함수를 호출하여 창의 초기 위치를 지정할 수 있습니다.

 

● glutCreateWindow("OpenGL Drawing Example");

OpenGl 출력을 위한 윈도우를 생성

 

● glMatrixMode(GL_PROJECTION);

OpenGL에서 다양한 그래픽 변환을 적용하고자 할 때 어떤 종류의 변환을 수행할 것인지를 결정하는데 중요한 역할을 합니다.

glMatrixMode(GL_PROJECTION); 명령은 현재 OpenGL 컨텍스트에서 그래픽 변환을 적용할 모드를 투영 행렬 모드로 설정하는 것을 의미합니다. 이 설정 후에는 glLoadIdentityglFrustum 또는 glOrtho와 같은 함수를 사용하여 원하는 투영 변환을 설정할 수 있습니다.

 

● glLoadIdentity();

OpenGL에서 사용되는 함수 중 하나로, 현재 활성화된 변환 행렬을 단위 행렬(identity matrix)로 초기화하는 역할을 합니다.

 

● glOrtho(0.0, 1.0, 0.0, 1.0, 0.0, 1.0);

glOrtho(0.0, 1.0, 0.0, 1.0, 0.0, 1.0);는 화면 공간의 경계를 정의하고, 이 경계 내의 객체는 투영되어 화면에 그려집니다. 이 투영 행렬을 사용하면 원하는 2D 좌표계를 만들고 2D 그래픽 요소를 표시할 수 있습니다.

(x, y, z 는 -1 부터 1까지) 

 

● glutDisplayFunc()

GLUT 라이브러리에서 사용되는 콜백(callback) 함수를 등록하는 함수입니다. 이 함수는 그래픽 애플리케이션에서 화면을 그리는 데 사용되며, 화면이 다시 그려져야 할 때 호출됩니다.

 

● glutMouseFunc()

GLUT 라이브러리에서 사용자가 마우스 이벤트를 처리하는 콜백(callback) 함수를 등록하는 함수입니다. 이 함수를 사용하면 마우스 버튼 클릭 및 릴리즈와 같은 마우스 이벤트를 감지하고 처리할 수 있습니다.

 

● glutMotionFunc()

GLUT 라이브러리에서 마우스의 움직임을 처리하는 콜백(callback) 함수를 등록하는 함수입니다. 이 함수를 사용하면 마우스가 움직일 때 발생하는 이벤트를 감지하고 처리할 수 있습니다.

 

● glutMainLoop()

메시지 루프를 돌린다 프로그램이 종료될때까지 계속 실행된다.