在按键时更改 gluLookAt。上、右、下、左
Change gluLookAt on key press. Top, Right, Bottom, Left
我正在尝试更改按键时的 gluLookAt。例如,我想通过按下键 t、r、b、l 从顶部、右侧、底部和左侧查看我的场景。我开始从顶部实现外观,但在按下 "t" 键时它似乎不起作用,我的场景没有任何变化。我做错了什么?
这是我的 keyResponder 方法:
void CDrawModel::myKeyResponder(unsigned char key, int x, int y) {
if(key == 27) { // The ESC key
glutDestroyWindow(glutGetWindow()); // kill the window
exit(0);
}
if (key == 't' || key == 'T'){
gluLookAt(0, 600, 0,
0, 0, 0,
0, 600, 1);
cout << "T ot t pressed" << endl;
}
//refresh the screen after every key press...
glutPostRedisplay();
}
当您按下 't' 按钮时,lookAt 上的向上矢量必须为 (0,0,-1)。
意思是 gluLookAt 必须有这个参数:
gluLookAt(0,600,0, 0,0,0, 0,0,-1)
建议:尝试理解向上矢量对视图的意义。
我正在尝试更改按键时的 gluLookAt。例如,我想通过按下键 t、r、b、l 从顶部、右侧、底部和左侧查看我的场景。我开始从顶部实现外观,但在按下 "t" 键时它似乎不起作用,我的场景没有任何变化。我做错了什么?
这是我的 keyResponder 方法:
void CDrawModel::myKeyResponder(unsigned char key, int x, int y) {
if(key == 27) { // The ESC key
glutDestroyWindow(glutGetWindow()); // kill the window
exit(0);
}
if (key == 't' || key == 'T'){
gluLookAt(0, 600, 0,
0, 0, 0,
0, 600, 1);
cout << "T ot t pressed" << endl;
}
//refresh the screen after every key press...
glutPostRedisplay();
}
当您按下 't' 按钮时,lookAt 上的向上矢量必须为 (0,0,-1)。
意思是 gluLookAt 必须有这个参数:
gluLookAt(0,600,0, 0,0,0, 0,0,-1)
建议:尝试理解向上矢量对视图的意义。