OpenGL/Glut按钮和键
我正在学习使用Pearson, Computer Graphics with OpenGL
的书。OpenGL/Glut按钮和键
我目前正在尝试做一个简单的方形移动,但在我超越自己之前,我需要确定我明白在Glut中构建了哪些键。
我知道下面的键:
-
GLUT_KEY_F1, GLUT_KEY_F2, ..., GLUT_KEY_F12
- Page Up和Page Down键 -
GLUT_KEY_HOME, GLUT_KEY_END
- - Home和End键 -
GLUT_KEY_LEFT, GLUT_KEY_RIGHT, GLUT_KEY_UP, GLUT_KEY_DOWN
通过F12键 -
GLUT_KEY_PAGE_UP, GLUT_KEY_PAGE_DOWN
F1 - Arrow keys -
GLUT_KEY_INSERT
- Insert key
我发现他们在我的书或*在另一篇文章中。
但还有更多吗?例如,键盘和鼠标上的所有键?
谢谢。
键盘有两组按钮:那些可以使用ASCII代码和那些t帽子不能。可以用ASCII表示的那个按下时返回1个字节,不能返回两个字节的那个首先是NULL
glut通过给你提供两组函数来处理键盘事件:1处理正常的ASCII标准按钮glutKeyboardFunc
,其他特殊处理两个字节按钮glutSpecialFunc
特殊功能对普通键盘的特殊按钮常数:
GLUT_KEY_F1
:0×0001, GLUT_KEY_F2
:0×0002, GLUT_KEY_F3
:为0x0003, GLUT_KEY_F4
:0x0004, GLUT_KEY_F5
:0×0005, GLUT_KEY_F6
:0x0006, GLUT_KEY_F7
:0x0007, GLUT_KEY_F8
:0×0008, GLUT_KEY_F9
:为0x0009, GLUT_KEY_F10
:0x000A, GLUT_KEY_F11
:0x000B, GLUT_KEY_F12
:0x000C, GLUT_KEY_LEFT
:0x0064, GLUT_KEY_UP
:0x0065, GLUT_KEY_RIGHT
:0x0066, GLUT_KEY_DOWN
:0x0067, GLUT_KEY_PAGE_UP
:0x0068, GLUT_KEY_PAGE_DOWN
:0x0069, GLUT_KEY_HOME
:0x006A, GLUT_KEY_END
:0x006B, GLUT_KEY_INSERT
:0x006C, GLUT_KEY_REPEAT_OFF
:为0x0000, GLUT_KEY_REPEAT_ON
:0×0001, GLUT_KEY_REPEAT_DEFAULT
:0×0002。
鼠标点击可与glutMouseFunc
来处理并用鼠标按钮相关联的常数为: GLUT_LEFT_BUTTON
:0×0000, GLUT_MIDDLE_BUTTON
:0×0001, GLUT_RIGHT_BUTTON
:0×0002
过剩还可以处理与它具有glutJoystickFunc
操纵杆以下常量: GLUT_HAS_JOYSTICK
:0x0264, GLUT_OWNS_JOYSTICK
:0x0265, GLUT_JOYSTICK_BUTTONS
:0x0266, GLUT_JOYSTICK_AXES
:0x0267, GLUT_JOYSTICK_POLL_RATE
:0x0268, GLUT_JOYSTICK_BUTTON_A
:0×0001, GLUT_JOYSTICK_BUTTON_B
:0×0002, GLUT_JOYSTICK_BUTTON_C
:0x0004, GLUT_JOYSTICK_BUTTON_D
:0×0008。
如果您正在使用带有更多按钮的游戏鼠标或键盘/游戏杆,您可以通过将按钮按下到控制台来测试每个按钮的返回情况,然后直接在您的代码中使用该值来知道其中一个按钮被按下
在glut.h文件中看 – yattering 2013-03-15 15:17:40