Я пытаюсь приостановить программу GLUT во время ее выполнения, нажав клавишу на клавиатуре. Кажется, я не признаю свою запись. Вот соответствующие разделы моего кода:Приостановка программы C++ GLUT с записью клавиатуры
static bool paused = false;
void handleKeypress(unsigned char key, //The key that was pressed
int x, int y) { //The current mouse coordinates
switch (key) {
case 27: //Escape key
exit(0); //Exit the program
case 'p':
paused = !paused;
break;
}
}
int main(int argc, char** argv) {
//Initialize GLUT
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize(600, 400); //Set the window size
//Create the window
glutCreateWindow("Fractals in Motion");
initRendering(); //Initialize rendering
//Set handler functions for drawing, keypresses, and window resizes
if(!paused)
{
glutDisplayFunc(drawScene); //drawScene draws everything does the real work
glutTimerFunc(10, update, 0); //Add a timer
}
//glutKeyboardFunc(handleKeypress);
glutReshapeFunc(handleResize);
glutMainLoop(); //Start the main loop. glutMainLoop doesn't return.
return 0; //This line is never reached
}
я фактически получил скелет этого кода от этого очень будет написан учебник:
http://www.videotutorialsrock.com/opengl_tutorial/basic_shapes/home.php
Однако, я не могу показаться, чтобы получить программу для пауза, когда я нажимаю кнопку «p». Если у вас есть лучшие методы, дайте мне знать!
lol комментарий Я только что написал на ответ ниже, это, наверное, довольно забавно сейчас :) – CodeKingPlusPlus