#include
#include
#include
#include
GLint LR = 0.0, UD = 0.0;
void MyDisplay() {
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glColor3f(1.0, 0.0, 0.0);
glVertex3f(-0.5 + LR, -0.5, 0.0);
glVertex3f(0.5 + LR, -0.5, 0.0);
glVertex3f(0.5 + LR, 0.5, 0.0);
glVertex3f(-0.5 + LR, 0.5, 0.0);
glEnd();
glutSwapBuffers();
}
void MyKeyboard(int Key, int x, int y) {
switch(Key){
case GLUT_KEY_LEFT:
LR = LR - 0.01;
break;
case GLUT_KEY_RIGHT:
LR = LR + 0.01;
break;
}
glutPostRedisplay();
}
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
glutInitWindowSize(300, 300);
glutInitWindowPosition(0, 0);
glutCreateWindow("오픈지엘 예제");
glClearColor(1.0, 1.0, 1.0, 1.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);
glutDisplayFunc(MyDisplay);
glutSpecialFunc(MyKeyboard);
glutMainLoop();
return 0;
}
좌우 방향키에 따라서 사각형이 움직이는 코드를 작성했는데 움직이지 않습니다. 스위치문에 exit(0)를 넣으면 정삭 작동하는걸 보아서 스위치문의 연산 항목이 잘못된것같은데
당췌 모르겠네요. 도움 부탁드립니다.
(IP보기클릭)58.233.***.***
(IP보기클릭)58.143.***.***
이분 의견이 맞네요 소수점 이하 쓰시면서 int 는 아니죠 float 자료형 쓰세요~ ㅎㅎ | 17.04.25 01:51 | |
(IP보기클릭)180.64.***.***
저도 그런같네요 짧게 그냥 취미로 배운거라 잘은 모르지만.. int는 정수형으로 알고있거든요 그래서 안되는거 같습니다. | 17.04.25 03:56 | |
(IP보기클릭)211.189.***.***
+1 | 17.04.25 12:33 | |
(IP보기클릭)110.70.***.***