誰でも私にどのように伝えることができますか?OpenGLをズームインするコマンドとしてキーボードを使用する方法は?
私はOpenGLを書いている
..私はキーではなく、入力より命令として押されたというコマンドを呼び出すために使用し、どのように何のライブラリとしてはよく分からないので、前にこれをやったことがありませんプログラムVisio C++
誰でも私にどのように伝えることができますか?OpenGLをズームインするコマンドとしてキーボードを使用する方法は?
私はOpenGLを書いている
..私はキーではなく、入力より命令として押されたというコマンドを呼び出すために使用し、どのように何のライブラリとしてはよく分からないので、前にこれをやったことがありませんプログラムVisio C++
OpenGLをズームインしてキーボード入力を取得することは、2つの異なることです。任意のGUI(MFC、wxWidgets、Qt、.Net)を使用して、キーボードイベントを入力として取得できます。次に、OpenGL関数(glTranslate)を呼び出してズームを変更し、シーン内のすべてを再描画することができます。
Win32のでは、あなたが何かを行うことができ、キーの状態を取得するには、以下:
#define KEY_DOWN(vKey) (GetAsyncKeyState(vKey) & 0x8000) ? true : false
#define KEY_UP(vKey) (GetAsyncKeyState(vKey) & 0x8000) ? false: true
VKEYは、キーのASCII値を表すintです。
あなたは「ズーム」キーが押されていることを知ったとき、あなたは、これは当然のことながらに依存しているとして、あなたは、ズーム操作を行うために、より複雑なコードを使用したい現実的
glPushMatrix();
glTranslate3f(5.0,0.0,0.0); // moves the camera +5 down the x-axis
...
glPopMatrix();
変換を行うことができますビュー方向。また、メッセージループ内に座って、マウスの位置やマウスボタンなど、アプリケーションで使用するすべてのキーの状態を保持する、より複雑なキー状態関数を持つこともできます。
ここで私はこの参照を得ることができますか? – noob88
機能自体は簡単なgoogleで見つけることができます。 http://msdn.microsoft.com/en-us/library/ms646293(VS.85).aspx しかし、これは最善の方向ではないかもしれません。あなたは、OpenGLウィンドウをどのように作成するかについてより具体的にする必要があります。例えばGLUTを使っていますか? –