[컴퓨터그래픽스] 실습: CircleGL

Serun1017·2024년 10월 23일
0

컴퓨터그래픽스

목록 보기
9/31

CircleGL.cpp Code

#include <vgl.h>
#include <math.h>

void display() {

	glClear(GL_COLOR_BUFFER_BIT); // 디스플레이 초기화
	
	int div = rand() % 300 + 100;
	float ang = 360.0f / div * 3.141592 / 180.0f;

	glBegin(GL_TRIANGLES); // Vertex 생성 시작

	// 원 Vertex 생성
	for (int i = 0; i < div; i++) {
		glColor3f(float(i) / div, 0, 1 - float(i) / div);
		glVertex2f(0, 0);
		glVertex2f(cos(ang * i), sin(ang * i));
		glVertex2f(cos(ang * (i+1)), sin(ang * (i+1)));
	}
		
	glEnd(); // Vertex 생성 종료
	glFlush(); // 화면에 Vertex를 그림 (Vertex 정보를 GPU에 보내 그림)
}


int main(int argc, char** argv)
{
	glutInit(&argc, argv); // GLUT 초기화

	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); // 디스플레이 모드 설정
	glutInitWindowSize(512, 512); // 윈도우 크기 설정
	glutCreateWindow("Hello GL"); // 윈도우 생성, 윈도우 이름 설정

	glutDisplayFunc(display); // 디스플레이 콜백 등록

	glutMainLoop(); // 이벤트 루프 시작

	return 0;
}

Result

CircleGL_result.png

0개의 댓글