コンピュータグラフィックス特論Ⅱ レポート課題2 幾何形状

2015/11/10
コンピュータグラフィックス特論Ⅱ
レポート課題2
幾何形状モデルと影の描画
九州工業大学 情報工学部 システム創成情報工学科
講義担当:尾下真樹
レポートの提出方法
1. 提出締め切りは 11 月 27 日(金) 18:00
2. 作成したプログラムのソースファイル、及び、レポートを、Moodle(http://mi.el.kyutech.ac.jp/)の「コ
ンピュータグラフィックス特論Ⅱ」コースの、レポート提出用ページから提出すること。
3. レポートのファイル形式は、MS Word または PDF で作成すること。
4. レポートのファイル名は学生番号にすること。
(例:学生番号が 01233001 であれば、”01233001.doc”,
“01233001.pdf” などのファイル名で提出する。)
同じく、プログラムのソースファイル名は、”学生番号.c” や ”学生番号.cpp” などとすること。複数の
プログラムを提出する場合は、各プログラム名を”学生番号-プログラム番号.c” とし、全ファイルをまと
めて圧縮して、”学生番号.zip”というファイル名で提出すること。
5. テクスチャ画像やモデルデータなど、プログラムを実行するために必要なデータがあれば、一緒に添付
して提出すること。ただし、合計ファイルサイズが 10MB を超えるような場合は、事前に相談すること。
プログラム
講義で学んだ下記の描画処理を実現するプログラムを作成する。
1. 幾何形状モデルの描画
ファイルから読み込んだ幾何形状モデルを、OpenGL の描画関数を用いて画面に描画する。
幾何形状モデルの読み込みは、サンプルプログラムを用いても良い。
2. 影の描画(テクスチャマッピング)
テクスチャマッピングを用いて半透明の影を描画する。
影のテクスチャ画像は、サンプルとして用意されているものを用いても良い。
3. 影の描画(ポリゴン投影)
ポリゴン投影を用いて半透明の影を描画する。
読み込み・描画を行う幾何形状モデルは、サンプルとして用意されている obj ファイルを用いても良い。自
分で用意した別の幾何形状モデルを用いても構わないが、極端に単純なモデルでは動作確認にならないため、
ある程度複雑なモデルを用いること。また、地面の模様や光源の設定は、自由に決めて構わない。
余力があれば、下記の追加課題にも取り組むこと。
4. 幾何形状モデルの描画(頂点配列を使用)
読み込んだ幾何形状モデルを、頂点配列の機能を用いて描画可能なデータ構造に変換し、頂点配列の機
能を使って描画する。
5. 影の描画(ポリゴン投影+ステンシルバッファ)
ステンシルバッファを用いて、同一ピクセルに複数の影が重なって描画されないようにする。
6. 影の描画(シャドウ・ヴォリューム)
7. 影の描画(シャドウ・マップ)
課題 6~7 の結果を確認するために、複数の物体を描画して、ある物体の影が別の物体に投影されるようにす
ること。なるべく、サンプルプログラムと同様に、1つのプログラムでモード切り替えなどによって複数の
方法での影の描画に対応するのが望ましいが、難しいようであれば、影の描画方法ごとに別々のプログラム
1
2015/11/10
を作成しても構わない。
レポート
自分の作成したプログラムを説明するようなレポートを作成する。だらだらと長いレポートを書く必要はな
い。箇条書きなどを使っても良いので、要点を簡潔に説明すること。
レポートの先頭ページには、科目名、提出日、学生番号、氏名を書くこと。また、本文には、下記の内容を
含めること。
プログラムの仕様の説明
自分の作成したプログラムの具体的な操作方法などを簡潔に記述する。
プログラムの実現方法の説明
各課題について、どのようにして実現したか、なるべく簡潔に説明すること。課題で指定されている部分以
外のプログラミングについては、解説する必要はない。ただし、何か工夫したことがあれば、簡単に説明を
加えること。
レポートの評価方法
1. 基本的に、課題の描画処理を正しく実現するプログラムになっているかどうかを評価する。
2. 課題 1~3 がきちんと実現されていれば 80 点満点で評価する。課題 4~7 もできていれば、100 点満点
で評価する。必ずしも課題 4~7 の全てができていなくとも、一部でもできていれば 100 点満点で評価
する。
2