wisdiom 아니고 wisdom

[실습 01] 화면 출력하기 본문

👩‍💻/OpenGL

[실습 01] 화면 출력하기

글로랴 2021. 6. 30. 20:16
#include <GL/glut.h>



GLvoid drawScene(GLvoid);
GLvoid reshape(int, int);

​

void main()
{
 glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); // 디스플레이 모드 설정
 glutInitWindowPosition(100, 100); // 윈도우의 위치 지정
 glutInitWindowSize(800, 600); // 윈도우의 크기 지정
 glutCreateWindow("Example1"); //윈도우 생성(이름)
 glutDisplayFunc(drawScene); // 출력 함수의 지정
 glutReshapeFunc(reshape); // 다시 그리기 함수 지정
 glutMainLoop(); // 이벤트 처리 시작
}



GLvoid drawScene()
{
 glClearColor(1.0f, 0.0f, 1.0f, 1.0f); //바탕색을 '파랑'으로 지정
 glClear(GL_COLOR_BUFFER_BIT); // 설정된 색으로 전체를 칠한다
 glColor4f(1.0f, 1.0f, 1.0f, 1.0f); // 그리기 색을 '하얀'으로 지정
 glRectf(-0.3f, -0.3f, 0.3f, 0.3f);  //사각형 그리기 (가운데)
 
 //모서리
 glColor4f(0.0f, 1.0f, 1.0f, 0.0f); // 하늘
 glRectf(-1.0f, 1.0f, -0.4f, 0.4f); // 왼쪽 위
 glColor4f(1.0f, 0.0f, 0.0f, 0.0f);  // 빨간
 glRectf(-1.0f, -1.0f, -0.4f, -0.4f); //왼쪽 아래

 glColor4f(0.0f, 1.0f, 0.0f, 0.0f); // 초록
 glRectf(1.0f, 1.0f, 0.4f, 0.4f); // 오른쪽 위
 glColor4f(1.0f, 1.0f, 0.0f, 0.0f); // 노랑
 glRectf(1.0f, -1.0f, 0.4f, -0.4f); // 오른쪽 아래
 glFlush();  // 화면에 출력
}

​

GLvoid reshape(int w, int h) // 다시 그리기 함수
{
 glViewport(0, 0, w, h);
} 
반응형
Comments