Computer Graphics

Course Information

College Tokuyama College Year 2018
Course Title Computer Graphics
Course Code 0154 Course Category Specialized / Elective
Class Format Lecture Credits Academic Credit: 2
Department Department of Computer Science and Electronic Engineering Student Grade 5th
Term Year-round Classes per Week 1
Textbook and/or Teaching Materials テキスト:CG-ARTS協会 「コンピュータグラフィックス」、参考図書:床井浩平「GLUTによるOpenGL入門」工学社、上坂吉則「MATLABプログラミング入門」牧野書店
Instructor Koga Takanori

Course Objectives

コンピュータグラフィックス(CG)の処理技術の理論とアルゴリズムを理解し、OpenGLを利用したC言語プログラミングによるCGの取り扱いと図形処理の実践ができるようになることを目標とする。講義および試験のレベルはCGエンジニア検定のエキスパート程度とする。

Rubric

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
CGで用いられる基本的な用語・理論の理解コンピュータグラフィックスで用いられる基本的な技術に関連する理論とアルゴリズムについて詳細に説明することができる.コンピュータグラフィックスで用いられる基本的な技術に関連する理論とアルゴリズムについて説明することができる.コンピュータグラフィックスで用いられる基本的な技術に関連する理論とアルゴリズムについて説明することができない.
3次元CGプログラミングの実践的能力OpenGLを利用したC言語プログラミングによるCGの取り扱いと図形処理の実践ができ,様々な用途に応用することができる.OpenGLを利用したC言語プログラミングによるCGの取り扱いと図形処理の実践ができる.OpenGLを利用したC言語プログラミングによるCGの取り扱いと図形処理の実践ができない.

Assigned Department Objectives

到達目標 B 1 See Hide
JABEE d-1 See Hide

Teaching Method

Outline:
3次元コンピュータグラフィックス(3DCG)の基本的な技術について理論とアルゴリズムを学習するとともに、実際に3DCGの制作を行う場合に必要な実践的グラフィックス処理技術を、C言語とOpenGLを利用したプログラミング演習によって習得する。また、CGで多用される行列計算や、CGと関連が深い画像処理技術の一部についても基本的技術の学習とMATLAB(もしくはOctave)を用いたプログラミング演習を通じて修得する。
Style:
3DCG制作の基礎的手法を座学で学び、実際にグラフィックスライブラリOpenGLを用いたC言語プログラミング演習で実践する。座学中心で講義を進め、理解を深めるための課題演習(プログラミング)を適宜行う。授業内容を確実に身につけるために予習復習が必須である(特に、教科書に記述されている内容は予習済みであるとして講義を進める)。また、行列計算を多用するため、線形代数の基礎的内容を復習しておくことが望ましい。
Notice:
学年末評価は、定期試験の得点・レポートの得点・総合演習課題の得点をそれぞれ60%・20%・20%の比率で合算して算出する。レポートおよび総合演習課題は実践力に関する評価を行うための根拠となるため、これらの提出が一部でもなされない場合には原則として学年末評価を行わない。

Course Plan

Theme Goals
1st Semester
1st Quarter
1st ガイダンス・導入 視覚特性などの視覚情報処理における基礎的事項、CGの主要な歴史、知的財産権についての知識を修得する。
2nd ディジタルカメラモデル、CGシステム CGと画像処理の違い、ディジタルカメラモデル、CG制作システムの基本的構成についての知識を修得する。
3rd 視覚に訴えるグラフィックス イメージベーストレンダリング、ノンフォトリアリスティックレンダリング、可視化についての知識を修得する。
4th ディジタル画像とその表現 (1) ディジタル画像の基礎的事項、色空間、画像の生成と描画について、プログラミングを行いながら実践的知識を修得する。
5th ディジタル画像とその表現 (2) 画素ごとの濃淡変換と色変換についてプログラミングを行いながら実践的知識を修得する。
6th ディジタル画像とその表現 (3) 領域に基づく画像変換(空間フィルタリング・幾何学変換)についてプログラミングを行いながら実践的知識を修得する。
7th グラフィックス表示の基礎 (1) OpenGLに関する基礎的事項、開発環境の構築を行う。
8th グラフィックス表示の基礎 (2) OpenGLに関する基礎的演習を行い、ライブラリの基本的な利用方法を修得する。
2nd Quarter
9th 中間試験 これまでに学習した内容の理解度を確認する。
10th 2次元座標変換 (1) CGにおける座標系、アフィン変換について、プログラミングを行いながら実践的知識を修得する。
11th 2次元座標変換 (2) 2次元座標系における各種変換について、プログラミングを行いながら実践的知識を修得する。
12th 3次元座標変換(1) 3次元座標系における各種変換についてプログラミングを行いながら実践的知識を修得する。
13th 3次元座標変換(2) 3次元座標系における各種変換に関して、プログラミングを行いながら実践的知識を修得する。
14th 投影 3次元物体の投影原理と性質、ビューイングパイプラインについて理論的知識を修得する。
15th 期末試験 これまでに学習した内容の理解度を確認する。
16th 答案返却など 答案返却と解説を行う。
2nd Semester
3rd Quarter
1st モデリング(1) CGで利用される各種モデリング手法について、それらの特性と実用におけるメリット・デメリットを理解する。
2nd モデリング(2) 曲線・曲面の表現方法、パラメトリック曲線・曲面について理論的知識を修得する。
3rd モデリング(3) ポリゴン曲面について
4th モデリング(4) ボクセル、フラクタル、メタボール、パーティクルなどの表現手法について理論的知識を修得する。
5th レンダリング (1) リアリスティックレンダリングのための基礎的事項について講義とプログラミング演習を通じて理解する。
6th レンダリング (2) 隠面消去法、シェーディングの基礎的事項について講義とプログラミング演習を通じて理解する。
7th レンダリング (3) 陰影表現、照明モデル、テクスチャマッピングについて講義とプログラミング演習を通じて理解する。
8th 中間試験 これまでに学習した内容の理解度を確認する
4th Quarter
9th レンダリング (4) テクスチャマッピングの応用、バンプマッピングなどについて講義とプログラミング演習を通じて理解する。
10th アニメーション (1) アニメーション技術の基礎的事項について講義とプログラミング演習を通じて理解する。
11th アニメーション (2) アニメーションに関して、講義とプログラミング演習を通じて理解する。
12th CG制作総合演習 (1) ここまでに修得した内容を用いたオリジナルCG作品の企画と制作を行う。
13th CG制作総合演習 (2) ここまでに修得した内容を用いたオリジナルCG作品の制作を行う。
14th CG制作総合演習 (3) ここまでに修得した内容を用いたオリジナルCG作品の制作および成果のまとめを行う。
15th 期末試験 総合演習で制作した作品の報告を行う。
16th 答案返却など 総合演習のレポート作成、総括を行う。

Evaluation Method and Weight (%)

試験レポート最終課題Total
Subtotal602020100
CGに関する基本的知識6010070
3次元CGプログラミングの実践力0102030