如何使用键盘作为命令来放大opengl?
谁能告诉我怎么做?
我以前从未这样做过,所以我不确定要使用什么库以及如何调用按下按键作为指令而不是输入的命令。
我正在用 Visio C++ 编写 OpenGL 程序
can anyone tell me how?
i've never done this before so i'm not sure as what library to use and how to call the command that a key pressed as a instruction rather than input..
i'm writing a OpenGL program in Visio C++
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
缩放 OpenGL 和获取键盘输入是两件不同的事情。 您可以使用任何 GUI(MFC、wxWidgets、Qt、.Net)来捕获键盘事件作为输入。 然后,您可以调用 OpenGL 函数 (glTranslate) 来更改缩放,然后重新绘制场景中的所有内容。
Zooming in OpenGL and getting keyboar inputs are two different things. You can use whatever GUI (MFC, wxWidgets, Qt, .Net) to capture keyboard events as input. Then, you can call OpenGL functions (glTranslate) to change the zoom and then redraw everything in your scene.
在 Win32 中,您可以执行以下操作来获取键的状态:
vKey 是表示键 ASCII 值的 int。
当您知道按下了“缩放”键时,您就可以进行翻译。
实际上,您会使用更复杂的代码来进行缩放,因为这当然取决于视图方向。 此外,您还会有一个更复杂的按键状态函数,它将位于消息循环中并保存应用程序将使用的所有按键的状态,包括鼠标位置和鼠标按钮。
In Win32 you can do something the following to get the state of a key:
vKey is an int representing the keys ASCII value.
When you know that the "zoom" key is being pressed, then you can do a translate
Realistically you'd use more complex code to do the zoom as this is of course dependant on the view direction. Also you'd have a more complex key state function that would sit in your message loop and hold the state of all the keys your app would use including the mouse position and mouse buttons.