2001年9月3日更新
  関谷トップページへ CG2001 トップページへ  

図形処理・計算処理実習2001 No.14 OpenGL(GLUT入門-2/2)

1. 前回のNo.13 OpenGL(GLUT入門-1/2)の復習とコメント

 前回からは、GLUTによる「手抜き」OpenGL入門 和歌山大学システム工学部 床井浩平先生のページを使わせてもらって、OpenGLの学習を始めた。

1.2 なぜOpenGLか?
1.1 なぜ GLUT か

2.3 Windows にglutをインストールする (C301教室は準備済み)
(c302/3教室では、各自で3つのファイルのコピーをすること。)
3.コンパイルの仕方 3.2 Windows (VC++) の場合
(補足)OpenGL(英文),glut(日本語)のドキュメント

4.ウィンドウを開く
  4.1 空のウィンドウを開く
  4.2 ウィンドウを塗りつぶす

5.2次元図形を描く
  5.1 線を引く
  5.2 図形のタイプ
  5.3 線に色を付ける
  5.4 図形を塗りつぶす
  5.5 関数の命名法

6.座標軸を設定する
  6.1 座標軸とビューポート
  6.2 位置やサイズを指定してウィンドウを開く

7.マウスとキーボード
  7.1 マウスボタンをクリックする
  7.2 マウスをドラッグする
  7.3 キーボードから読み込む

前回の実習とWebレポートへのコメント

 OpenGLのグラフィック機能とその使い方を考察すること。
 そして、例題などを改造をする。あるいは、自分の作品をつくる。

 皆さんのWebページをアップロードした人が少ない。残念である。

 アップロードされたレポートのソースファイルへのコメントの記入が少ない。コメントで、ファイル名、プログラム名、作成日、氏名や、考察、プログラムのソース行の右側へのコメントなどがあれば、何をどうしたのかが、他の人でも分かる。)

 前期で図形処理の授業が終わるので、9月末までに、これまでの整理をすること。

2.今日の学習-OpenGL(GLUT入門-その2/2)

この授業でのテキストは、以下のWebページを使わせていただいている。
GLUTによる「手抜き」OpenGL入門 和歌山大学システム工学部 床井浩平

8.3次元図形を描く
  8.1 2次元と3次元

  8.2 線画を表示する

1)テキストにもあるが、簡単にワイヤフレームの立方体を描くには、glutWireCube(size);が良い。
2)表示が軸測投影(glOrtho() はワールド座標系を正規化デバイス座標系に平行投影 (orthographic projection : 正射影)のため、立体が正方形にしか見えないことに対しては、8.1でのglRotated()を使えば、回転させた図が見れる。

  8.3 透視投影する
  8.4 視点の位置を変更する

9.アニメーション
  9.1 物体を動かす

 回転のスピードを変えるには、回転の角度rの増分を1でなく、2とか5とか大きくすれば、早く回っているように見える。

  9.2 ダブルバッファリング

10.隠面消去
 10.1 多面体を塗りつぶす
 10.2 デプスバッファを使う
 10.3 カリング

11.陰影付け
 11.1 光を当ててみる
 11.2 光源を設定する
 11.3 材質を設定する

12.階層構造

<参考>
実験1.ウォークスルーの実験

実験2.立体視の実験

3 実習課題とレポート

テキストの例題とその解説を読み、例題をコンパイルし、実行してみる。
それらの中で、皆さんの興味を持った例を解析し、改造・組み合わせて、皆さんのOpenGLでの作品を作りなさい。
 ソースファイルへのコメントで、ファイル名、プログラム名、作成日、氏名や、考察、プログラムのソース行の右側へのコメントなどを追加すること。なお、実行時の窓のタイトル文字列を以下の*nameで指定のこと。
  int glutCreateWindow(char *name) で、ウィンドウを開く。そのときの引数nameの文字列はウィンドウのタイトルバーのところに表示される。作品タイトルと、作成日、作者を表示すると、図が分かりやすい。

 レポートは、それらの作品をhtmlファイルとして編集し、Webサーバにアップロードのこと。(残念ながら、Webでは実行できない。実行画面をAlt+PrintScreenでクリップボードに取り込み、ペイントなどで圧縮したものを表示すること。)