Notice
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- Nodejs
- 초대장
- 클라우드 비교
- visual studio code
- Toast
- code 설치
- 티스토리 초대장
- '티스토리 초대장/ 티스토리초대'
- code .
- visual studio code cli
- CLI
- 네이버 클라우드 플랫폼
- 유니옥션
- AWS
- settings sync
- 티스토리초대
- code
- 티스토리 초대장/ 티스토리초대
- 플러그인
- 프리티어
- GNC
- code 세팅
- Today
- 2
- Total
- 61,075
신나게 개발하기
[OpenGL]2개 물체중 하나만 돌리기 . 본문
#include#include static GLfloat spin = 0.0; void display(void) { glClear(GL_COLOR_BUFFER_BIT); glPushMatrix(); glRotatef(spin, 0.0, 0.0, 0.1); glColor3f(1.0, 1.0, 1.0); glColor3f(1.0, 1.0, 1.0); glBegin(GL_POLYGON); glVertex3f (11.25, 11.25, 0.0); glVertex3f (93.75, 11.25, 0.0); glVertex3f (93.75, 11.75, 0.0); glVertex3f (11.25, 11.75, 0.0); glEnd(); glPopMatrix(); glColor3f(1.0, 1.0, 1.0); glBegin(GL_POLYGON); glVertex3f (9.25, 0.25, 0.0); glVertex3f (93.75, 0.25, 0.0); glVertex3f (93.75, 0.75, 0.0); glVertex3f (0.25, 0.75, 0.0); glEnd(); glutSwapBuffers(); } void spinDisplay(void) { spin = spin + 2.0; if (spin > 360.0) spin = spin - 360.0; glutPostRedisplay(); } void spinDisplay2(void) { spin = spin + 5.0; if (spin > 360.0) spin = spin - 360.0; glutPostRedisplay(); } void init(void) { glClearColor (0.0, 0.0, 0.0, 0.0); glShadeModel (GL_FLAT); } void reshape(int w, int h) { glViewport (0, 0, (GLsizei) w, (GLsizei) h); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(-50.0, 50.0, -50.0, 50.0, -1.0, 1.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); } void mouse(int button, int state, int x, int y) { switch (button) { case GLUT_LEFT_BUTTON: if (state == GLUT_DOWN) glutIdleFunc(spinDisplay); break; case GLUT_MIDDLE_BUTTON: glutIdleFunc(spinDisplay2); break; case GLUT_RIGHT_BUTTON: if (state == GLUT_DOWN) glutIdleFunc(NULL); break; default: break; } } /* * Request double buffer display mode. * Register mouse input callback functions */ int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode (GLUT_DOUBLE | GLUT_RGB); glutInitWindowSize (250, 250); glutInitWindowPosition (100, 100); glutCreateWindow (argv[0]); init (); glutDisplayFunc(display); glutReshapeFunc(reshape); glutMouseFunc(mouse); glutMainLoop(); return 0; }
'프로그래밍 > OpenGL with C' 카테고리의 다른 글
[OpenGL]2개 물체중 하나만 돌리기 . (0) | 2010.08.31 |
---|
0 Comments