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

科目基礎情報

学校 沼津工業高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 コンピュータグラフィックス
科目番号 2020-428 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 学修単位: 2
開設学科 制御情報工学科 対象学年 4
開設期 通年 週時間数 前期:2 後期:2
教科書/教材 適宜ハンドアウト資料を配付します
担当教員 藤尾 三紀夫

到達目標

1.コンピュータグラフィックのモデリング、視野、投影、ディスプレイ変換について具体的な座標変換計算ができる。
2.レンダリング法(照明モデル)および隠面処理、マッピング技術の種類と概要についてについて概説できる。
3.与えられた3次元CG作成課題を対象に、OpenGLを用いて要求仕様を満たすプログラムを作成すると同時に、その過程と考察を報告書に整理することができる(C2-3)。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1 コンピュータグラフィックのモデリング、視野、投影、ディスプレイ変換について具体的な座標変換計算ができる。□モデリング、視野、投影,ディスプレイ変換を計算する手順がわかっており、正確に計算できる□モデリング、視野、投影、ディスプレイ変換の手順がわかっており、計算できる□モデリング、視野、投影、ディスプレイ変換の手順がわからず計算できない
評価項目2 レンダリング法(照明モデル)および隠面処理、マッピング技術の種類と概要についてについて概説できる。□レンダリング法の全種類と概要について正しく説明できる □隠面処理法の全種類と概要について正しく説明できる □マッピング法の全種類と概要について正しく説明できる □CGの高速化技術の手法と概要について正しく説明できる□レンダリング法の種類と概要について概ね説明できる □隠面処理法の種類と概要について概ね説明できるい □マッピング法の種類と概要について概ね説明できる □CGの高速化技術の手法について概ね説明できる□レンダリング法の種類と概要について説明できない □隠面処理法の種類と概要について説明できない □マッピング法の種類と概要について説明できない □CGの高速化技術について説明できない
評価項目3 与えられた3次元CG作成課題を対象に,OpenGLを用いて要求仕様を満たすプログラムを作成すると同時に,その過程と考察を報告書に整理することができる(C2-3)。□与えられた課題の要求仕様に加えて独自の機能を追加したプログラムを作成でき、報告書にまとめることができる□与えられた課題の要求仕様を満たすプログラムを作成でき、報告書にまとめることができる□与えられた課題の要求仕様を満たすプログラムを作成できない

学科の到達目標項目との関係

実践指針 (C2) 説明 閉じる
実践指針のレベル (C2-3) 説明 閉じる
【本校学習・教育目標(本科のみ)】 3 説明 閉じる
【プログラム学習・教育目標 】 C 説明 閉じる

教育方法等

概要:
 CGの進歩は著しく、ゲームや映画など我々の身近な日常に深く浸透してきており、工学の世界ではこれらのソフトウェアを利用、開発する機会が多くなってきている。本講義ではCGの基礎となる座標変換やシェーディング、投影変換を学び、ソフトウェアを利用する際の基本技術を習得する。また、講義で得た知識をより深めるため、OpenGLを利用したプログラミング演習を実施し、実際に簡単な3次元CGを作成する。
 なおこの科目は企業で数値制御機器のGUI開発を担当していた教員がその経験を活かし、3次元でのCG技術の基礎について講義形式で授業を行うものである。
授業の進め方・方法:
 授業は講義を中心に適宜学習内容について講義を行う。前期においては座標計算が主となるため、電卓を持参する必要がある。また、座標計算には演習を多く取り入れる。後期においては、シェーディングや隠面処理、マッピングなどのレンダリング技術について解説を行う。講義中心であるため、講義の終わりにはプログラミング課題を実施することにより、学習した内容の実装を行う。この時、描画用のライブラリとしてOpenGLを用いる。課題には標準目標を設定し、発展課題を実施したものには加点する。
注意点:
1.評価については、評価割合に従って行います。ただし、適宜再試や追加課題を課し、加点することがあります。
2.中間試験を授業時間内に実施することがあります。
3.前後期試験を各40%で合計80%、課題レポート20%とする。評価基準については授業目標(C2-3)が60%以上で、かつ全体で60点の場合に合格とする。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 オリエンテーション CGの現状や代表的なソフトウェアおよび授業の目的を説明できる。
2週 2次元CG(座標変換) スクリーン色とVRAMおよびディスプレイ座標の関係について説明できる。
3週 座標変換(座標変換とスクリーン座標,フレームバッファ)について説明できる。
4週 座標変換(物体の回転と移動)について説明できる。
5週 2次元座標変換演習 合成変換,合成行列と合成変換の演習を通じて、座標変換計算を行うことができる。
6週 3次元CG(座標変換) 3次元での座標変換(平行移動,スケーリング,回転)について説明できる。
7週 オブジェクト変換(オブジェクト座標とワールド座標)について説明できる。
8週 視野変換(ビュー座標,スクリーン座標変換)について説明できる。
2ndQ
9週 視野変換(合成行列)について説明できる。
10週 投影変換(並行投影と透視投影)について説明できる。
11週 3次元座標変換演習 3次元での座標変換の手順について具体的に説明できる。
12週 3次元での座標変換の演習を通じて3次元での座標変換計算を行うことができる。
13週 形状モデル 形状モデルの種類の概要について説明できる。
14週 ワイヤーフレーム,サーフェイス,ソリッドモデルについて説明できる。
15週 まとめ 前期での講義のまとめを行い、前期の概要を理解できる。
16週
後期
3rdQ
1週 シェーディング 照明モデルとシェーディング法概要とフラットシェーディングについて説明できる。
2週 スムースシェーディングについて説明できる。
3週 光源 光源の種類について説明できる。
4週 隠面処理 隠面処理に必要性と種類について説明できる。
5週 Z-Bufferについて説明できる。
6週 RayTracingとVolumeRenderingについて説明できる。
7週 マッピング テクスチャーマッピング,バンプマッピング,リフレクションマッピングについて説明できる。
8週 シャドウイング シャドウイング手法の種類について説明できる。
4thQ
9週 演習Ⅰ(シェーディング) シェーディング演習(OpenGLの使い方)を通じてOpenGLを利用できる。
10週 シェーディング演習を通じて座標変換してワイヤーフレーム表示できる。
11週 シェーディング演習を通じてフラットシェーディングで立体を描画できる。
12週 演習Ⅱ(レイトレーシング) レイトレーシング演習を通じて公差判定計算ができる。
13週 レイトレーシング演習を通じて1つの球についてレイトレーシング表示ができる。
14週 レイトレーシング演習を通じて複数の球体のレイトレーシング表示ができる。
15週 まとめ 後期での講義のまとめを行い、後期の概要を理解できる。
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力数学数学数学角を弧度法で表現することができる。3前3
三角関数の性質を理解し、グラフをかくことができる。3前4
加法定理および加法定理から導出される公式等を使うことができる。3前4,前5
三角関数を含む簡単な方程式を解くことができる。3前4,前5
三角比を理解し、簡単な場合について、三角比を求めることができる。3前3,前4,前5,前10
一般角の三角関数の値を求めることができる。3前3,前4,前5
平面および空間ベクトルの内積を求めることができる。3前6,前7,前8,後9,後10,後11,後12,後13,後14
空間内の直線・平面・球の方程式を求めることができる(必要に応じてベクトル方程式も扱う)。3前6,前7,前8,後12,後13,後14
行列の定義を理解し、行列の和・差・スカラーとの積、行列の積を求めることができる。3前6,前7,前8,前9,後10,後11
逆行列の定義を理解し、2次の正方行列の逆行列を求めることができる。3前6,前7,前8,前9,後10,後11
行列式の定義および性質を理解し、基本的な行列式の値を求めることができる。3前6,前7,前8,前9,後10,後11
線形変換の定義を理解し、線形変換を表す行列を求めることができる。3前4,前5,前6,後10,後11
合成変換や逆変換を表す行列を求めることができる。3前5,前6,前7,前8,前9,前10,後10,後11
平面内の回転に対応する線形変換を表す行列を求めることができる。3前3,前4,前5,前6,前7,前8,前9,前10,後10,後11
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4後9,後10,後11,後12,後13,後14
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4後9,後10,後11,後12,後13,後14
変数の概念を説明できる。4後9,後10,後11,後12,後13,後14
データ型の概念を説明できる。4後9,後10,後11,後12,後13,後14
制御構造の概念を理解し、条件分岐を記述できる。4後9,後10,後11,後12,後14
制御構造の概念を理解し、反復処理を記述できる。4後9,後10,後11,後12,後13,後14
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4後9,後10,後11,後12,後13,後14
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4後9,後10,後11,後12,後13,後14
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4後9,後10,後11,後12,後13,後14
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。3後9,後10,後11,後12,後13,後14
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。3後9,後10,後11,後12,後13,後14
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。3後9,後10,後11,後12,後13,後14
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。3後9,後10,後11,後12,後13,後14

評価割合

試験レポート課題相互評価態度ポートフォリオその他合計
総合評価割合80200000100
基礎的能力0000000
専門的能力80200000100
分野横断的能力0000000