現在地 >> メニュー >> 基本編03 >> 基本編03::はじめに

はじめに


3Dプログラミングを行う場合、描画の前にいくつかの設定がある。

基本的には、以下のコールバック関数を用意する。
  • 描画用の「display()関数」
  • ウィンドウのサイズ変更時に呼ばれる「reshape()関数」

reshape()関数


この関数は、

  1. 最初にウィンドウを作成した時
  2. マウスなどでウィンドウサイズを変更した時

に呼び出される。


以下のようにして登録する。

[例]

void reshape(int w, int h)
{
   ... ...
}

int main()
{
   ... ...
       glutReshapeFunc(reshape);
   ... ...
}



一般に、3D描画では
  1. ビューポートの設定
  2. 視体積設定
  3. 視点の設定
を行ってから、物体を描画する。

これらの設定をreshape()関数内に記述する事が多い。

[例]

void reshape(int w, int h)
{
    glViewport(0, 0, w, h); //ビューポートの設定
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluPerspective(30.0, (double)w / (double)h, 1.0, 100.0); //視体積の設定
    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity();
    gluLookAt(3.0, 4.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); //視点の設定
}



次は >> ビューポート

目次

― その他 ―

Wiki内検索

計測中...(07.10.8〜)

Save The World






▲よろしければ広告のクリックもお願いします


▲ランキングに参加しました

管理人/副管理人のみ編集できます