OpenGLメモ 
top

Window coordinates (ウィンドウ座標)

Window coordinatesは、OpenGLが最終的な表示につかう座標で、ほぼ画面上の表示領域の座標に等しい。違いは、画面上は通常左上が(0,0)になるのに対し、OpenGLのウィンドウ座標は、左下が(0,0)になる。略さずに言えば、Window screen coordinateともいえる。

ModelView matrix

オブジェクト座標をModelView行列で変換すると、Eye座標になる。

(多分、)ある物体、たとえば三角形などはそのオブジェクト座標で表現できる。これを描画したいシーンの特定の位置に移動させるために使うのがModelView行列。これによって、たとえば三角形が特定の場所にあることが表現できる。

Projection matrix

projection matrixは、eye coordinatesがある平面上にどのように見えるのかを計算するために使う配列。この配列を適用すると、Clip coordinates(クリップ座標)になる。

カメラを覗いて、あるシーンを見ている感じに近い。画面から外は本当は存在していても見えないし、見える角度、見える大きさなどはこれによって決まる。こ

What is a selection buffer?

glSelectBuffer(BUFSIZE, selectBuf);

glRenderMode(GL_SELECT); // Enter the SELECT render mode … glRenderMode(GL_RENDER); // exit selection mode. Returns the number of hit records to the selection buffer.

…parse the selection buffer…

gluPickMatrix(…); // Restrict the view volume to certain size.

Hit record:

glMatrixMode(GL_MODELVIEW); PaintScreen(GL_SELECT); // function paint the objects.

gluOrtho2D()

glGetIntegerv(Gl.GL_VIEWPORT, viewport_out)

viewportに関する情報をviewport_outに取り出す。ビューポートとは、OpenGLの画像が描かれる平面のこと(?) glGetIntegervは設定値を取り出すための関数。Get Integer Valueか? 取り出された情報は、(x, y, w, h)。例えば、(0,0,640,480)

glInitNames() glInitNames()はSELECTIONモードでしか意味が無い。 name stackを初期化する。name stackはSELECTIONモードで、描画コマンドを識別するために使われる。

GL_PROJECTION matrix: eye space coordinates → clip coordinates GL_MODELVIEW matrix: object space coordinates → eye space coordinates

glOrtho()

Orthographic projectionを選択する。Orthographic projectionは、遠くの物体も近くの物体も同じ大きさに見える投影方法で、三面図などに使われている。 glOrtho(左,右,下,上,近,遠)

imported