void keyboard( unsigned char key, int x, int y ) { switch(key) { case 27: // Escape key exit(0); break; case 'r': printf("save current screen\n"); screenshot.capture(); break; case '1': if (shaderProg != NULL) delete shaderProg; shaderProg = new GLSLProgram(gouraudVS, gouraudFS); initLights(numLights); glutPostRedisplay(); break; case '2': if (shaderProg != NULL) delete shaderProg; shaderProg = new GLSLProgram(blinnPhongVS, blinnPhongFS); initLights(numLights); glutPostRedisplay(); break; case '3': if (shaderProg != NULL) delete shaderProg; shaderProg = new GLSLProgram(checkerVS, checkerFS); initLights(numLights); glutPostRedisplay(); break; case 'q': numLights = 1; initLights(numLights); glutPostRedisplay(); break; case 'w': numLights = 2; initLights(numLights); glutPostRedisplay(); break; case 'e': numLights = 3; initLights(numLights); glutPostRedisplay(); break; } }
void keyboard( unsigned char key, int x, int y ) { switch(key) { case 27: // Escape key exit(0); break; case 'r': printf("save current screen\n"); screenshot.capture(); break; case 'a': printf("Gourand Shader\n"); setupGouraudShader(); break; case 's': printf("Blinn Phong Shader\n"); setupBlinnPhongShader(); break; case 'd': printf(" CheckerBoard Texture with Gouraud Shader\n"); setupCheckerBoardForGShader(); break; case 'f': printf(" CheckerBoard Texture with Blinn Shader\n"); setupCheckerBoardForBShader(); break; case 'g': printf(" Normal Shader\n"); setupNormalShader(); break; } }