2009-03-28 23 views

答えて

3

OpenGLをズームインしてキーボード入力を取得することは、2つの異なることです。任意のGUI(MFC、wxWidgets、Qt、.Net)を使用して、キーボードイベントを入力として取得できます。次に、OpenGL関数(glTranslate)を呼び出してズームを変更し、シーン内のすべてを再描画することができます。

1

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(); 

変換を行うことができますビュー方向。また、メッセージループ内に座って、マウスの位置やマウスボタンなど、アプリケーションで使用するすべてのキーの状態を保持する、より複雑なキー状態関数を持つこともできます。

+0

ここで私はこの参照を得ることができますか? – noob88

+0

機能自体は簡単なgoogleで見つけることができます。 http://msdn.microsoft.com/en-us/library/ms646293(VS.85).aspx しかし、これは最善の方向ではないかもしれません。あなたは、OpenGLウィンドウをどのように作成するかについてより具体的にする必要があります。例えばGLUTを使っていますか? –

関連する問題