检测GLUT中按下“逗号”的时间

时间:2013-02-11 19:22:50

标签: opengl glut

我有“glutKeyboardFunc(键盘);”在我的主要功能中,我如何检测用户何时按“逗号”或完全停止。我想在XZ平面的左边移动(strafe)一个距离,当按下逗号时。按下完全停止时,在XZ平面中向右移动。当前代码没有响应。

 if(key==GLUT_KEY_UP)
{
  eyez = eyez + RUN_SPEED;
}
else if(key==GLUT_KEY_DOWN)
{
  eyez = eyez - RUN_SPEED;
}
else if(key==',')
{
  eyex = eyex - RUN_SPEED;
}
else if(key=='.')
{
  eyex = eyex - RUN_SPEED;
}

2 个答案:

答案 0 :(得分:1)

glutKeyboardFunc()回调仅适用于ASCII类型的密钥。我很惊讶你从中得到箭头键事件。

为非ASCII密钥创建glutSpecialFunc()回调。

答案 1 :(得分:1)

亲爱的UoM学生注册COMP27112,这里需要的是逗号和点的ASCII码。

分别是44和46。

case 44:
  // Comma
  break;
case 46:
  // Dot
  break;