L0983200

コンピュータグラフィックス

Computer Graphics

開講部

工学部

開講学科

情報工学科

開講学年

3年次

開講時期

後期

単位数

2

単位区分

選択

系列区分

専門

講義区分

講義
講師関根詮明この先生のアンケート一覧を参照

授業の概要

コンピュータグラフィックス(CG)は、コンピュータの内部に画像や映像を生成・表示する技術である。画像は人間にとって極めて多くの情報を提供する媒体であることから、見え難いものを見え易く、見えないものを見えるように画像化する分野、すなわち、科学技術計算結果の可視化を行うビジュアライゼーションシステム、自然現象のシミュレーションシステム、医療における断層画像によるビジュアライゼーションシステム、コンピュータ支援設計を行うCADシステム、教育や娯楽における仮想現実感システム、コンピュータアニメーションなど多くの分野で使われ応用分野は急速に拡がっている。3次元CGを作るためには,モデリングおよび形状データの生成,レンダリングおよび照明・視点の調整など,多くのアルゴリズムを用いた計算処理を必要とする。本講義はCGの基本アルゴリズムを主題として、講義の節目ごとにCGを実行するためのプログラム表現技術の演習を設定し、CGの基本原理を修得することを目的とする。

達成目標

1.モデリングすなわち物体の形状作成や図形の3次元表現の技法が実践できる。
2.自由曲線によるモデリングおよび三角形ポリゴンによるモデリングができる。
3.物体の移動や回転、拡大・縮小などの幾何学変換と3次元空間を2次元平面に投影する投影変換の数学的処理ができる。
4.物体の表面の明るさを求めるシェーディング(陰付け)および影の計算を行うシャドーイング(影付け)や反射光の計算ができる。
5.CGアルゴリズムを実行するためのCGプログラムを作成することができる。

授業計画


【授業計画】【授業時間外課題(予習および復習を含む)】
1.コンピュータグラフィックスについて
 ・CGの要素技術と関連技術
 ・CG関連技術の歴史
 ・CGプログラムとコンピュータ環境の設定について
復習:C言語プログラミング
・wingxa.hグラフィックスヘッダの使用法とサンプルプログラムのコンパイル実行
・OpenGLの使用法とサンプルプログラムのコンパイル実行
2.座標系と幾何学変換
 ・グラフィックス要素
 ・点の表現と点の変換
 ・線分の表現と線分の変換
 ・2次元アフィン変換(回転、拡大、縮小)
・ベクトルと行列の演習問題(1)
・アフィン変換の演習問題(2)
予習:アフィン変換プログラム
3.アフィン変換による図形の座標変換
 ・図形のスケール変換(拡大・縮小)
 ・図形の回転
 ・アフィン変換プログラムの作成
・変換行列の演習問題(3)
予習:図形のアフィン変換プログラム
4.3次元CGと幾何学変換
 ・グラフィックス要素の数学的変換
 ・同次座標系と3次元アフィン変換
 ・平行移動を含めた変換行列
・立方体の座標変換(4)
・連続変換行列の演習問題(5)
予習:連続変換プログラム
5.投影変換とビューポート変換
 ・投影変換とは
 ・透視投影変換行列と平行投影変換行列
 ・視点座標系とビューポート変換
 ・小テストと解説
・透視投影変換のアルゴリズム(6)
・透視投影変換プログラム
・平行投影変換プログラム

第1回小テスト:アフィン変換
6.ワイヤーフレームによる3次元形状モデリング
 ・パラメータ表現による直線および曲線の表現
 ・基本プリミティブの描画(立方体、球、トーラス)
 ・ベジェ曲線の描画
 ・自由曲面の描画
プログラム課題提示
・標準課題(パラメトリック直線)
・自由課題(Bezier曲線描画)
7.ポリゴンによる3次元形状モデリング
 ・三角ポリゴンと法線ベクトルの計算
 ・立体の幾何モデル
 ・複雑な形状の多角形による近似
・法線ベクトルの計算(7)
・可視・不可視の判定(8)
予習:メッシュデータによるポリゴンCGプログラム
8.ディジタル画像の表示
 ・ディジタル画像の種類とファイル構造
 ・カラー画像と階調画像
 ・ディジタル画像の入出力プログラム作成
 ・ディジタル画像の変換
・画像ファイルの構造解析(9)
予習:RGB濃度表示プログラム
・カラー画像のモノクロ階調化および2値化プログラム
9.現実感のあるCG表現法
 ・テクスチャマッピング
 ・テクスチャマッピングアルゴリズム
 ・曲面へのマッピング
 ・環境マッピング
 ・バンプマッピング
レポート課題提示:
・模様のある立方体の描画プログラム
・ベジェ曲面を用いた芝浦工大の校旗描画プログラム
10.レンダリング手法
 ・シェーディング(陰付け)
 ・Zバッファ法と隠面消去アルゴリズム
 ・物体表面の輝度計算
 ・グローシェーディングとフォンシェーディング
・Lambertの余弦則による拡散反射光の輝度計算演習(10)
・Phong Modelによる鏡面反射光のハイライト計算演習(11)
予習:顔のシェーディング処理プログラム
11.レイトレーシング法(1)
 ・レイトレーシングアルゴリズム
 ・シェーディングとシャドーイング(影付け)
 ・球のレイトレーシングプログラム
・球のシェーディング(12)
予習:レイトレーシングプログラム
12.レイトレーシング法(2)
 ・反射光の表現
 ・透明度のある球への背景の映り込み
・平面と複数の球のレイトレーシングプログラム

第2回小テスト(ランバートの余弦則およびフォンモデルによる物体の表面の輝度計算)
13.アニメーション
 ・リアルタイムCGアニメーション
 ・キーフレームアニメーション
 ・人間の動作解析と歩行アニメーション
予習:キーフレームアニメーションプログラム
14.自然物体のCG表現
 ・フラクタル
 ・パーティクルシステム
 ・ボリュームレンダリング法
 ・最新のCGの話題
特に予習は必要なし。
15.期末試験と解説重要事項は、演習問題・小テスト、レポート課題や授業時の配布資料で示される。それらを中心に、全体に目を通しておくこと。

評価方法と基準

小テスト(20%)、レポート課題(20%)、期末試験(60%)合計100%として評価する。

教科書・参考書

教科書:(教科書準備中)資料配布
参考書:
「コンピュータグラフィックス」安居院猛・中嶋正之共著 昭晃堂
「応用OpenGLグラフィックス」安居院猛・関根詮明共著 森北出版
「WindowsですぐにできるC言語グラフィックス」安居院猛・佐野元昭・関根詮明共著  昭晃堂

履修登録前の準備

・C言語の基礎を復習しておいてください。
・線形代数特にベクトルと行列の取り扱いを復習しておいてください。

オフィスアワー、質問・相談の方法

講義内容等を質問・相談できるオフィスアワーは、講義の前後の時間に設定します。
特に講義前の時間は講義室にて待機して質問相談を受けます。
また、電子メールでも相談に応じます。

環境との関連

環境に関連しない科目

最終更新 : Sun Apr 06 08:06:33 JST 2014