求教高手,openGL程序如何做到显示图像开始后仍然能接受键盘窗口命令
我现在用linux的c++编程,借glut库来处理鼠标信号,改变图像,但遇到一个极大的问题。典型的glut都要进入一个死循环的子程序glutMainLoop。glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(250, 250);
glutInitWindowPosition(100, 100);
glutCreateWindow(“Test”);
init();
glutDisplayFunc(display);
.....
glutMainLoop();
进入glutMainLoop()之后,程序就无法再接受运行程序的stdio键盘输入命令。而我需要在图像显示后,仍然能够用键盘来输入命令改变图像,同时可以不影响图像自身的显示,我知道有其他程序可以这样做,请问怎么可以做到这点?
我知道glut有子程序void glutKeyboardFunc(void (*func)(unsigned char key, int x, int y));可以接受键盘命令,但那只能是在图像窗口,而不是原来调用OpenGL程序的窗口,对于借用图像做设计的用途,非常不方便。
另外,opengl可以接受游戏操纵杆的信号吗?