シラバス参照 |
科目一覧へ戻る | 2024/09/20 現在 |
開講科目名 /Course |
(人数制限科目)コンピュータグラフィックス/Computer Graphics | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
時間割コード /Course Code |
S1400300_S1 | ||||||||||||||||||||||||||||
開講所属 /Course Offered by |
システム工学部/Faculty of Systems Engineering | ||||||||||||||||||||||||||||
ターム・学期 /Term・Semester |
2024年度/Academic Year 第3クォーター/3Q | ||||||||||||||||||||||||||||
曜限 /Day, Period |
火/Tue 3, 火/Tue 4 | ||||||||||||||||||||||||||||
開講区分 /Semester offered |
第3クォーター/3Q | ||||||||||||||||||||||||||||
単位数 /Credits |
2.0 | ||||||||||||||||||||||||||||
学年 /Year |
3,4 | ||||||||||||||||||||||||||||
主担当教員 /Main Instructor |
床井 浩平 | ||||||||||||||||||||||||||||
科目区分 /Course Group |
_ | ||||||||||||||||||||||||||||
授業形態 /Lecture Form |
講義 | ||||||||||||||||||||||||||||
教室 /Classroom |
学術情報センター第3演習室(西5号館)/学術情報センター第3演習室(西5号館) | ||||||||||||||||||||||||||||
開講形態 /Course Format |
|||||||||||||||||||||||||||||
ディプロマポリシー情報 /Diploma Policy |
|
教員名 /Instructor |
教員所属名 /Affiliation |
---|---|
床井 浩平 | システム工学部(教員) |
授業の概要・ねらい /Course Aims |
この講義では、3次元コンピュータグラフィックス (3DCG) の技術的基礎について学びます。このねらいは、Maya や Blender などの CG ソフトやゲームソフトが、どうやって映像を作っているのか理解することにあります。それにより、CG ソフトを使いこなすのに必要な用語や概念を知るとともに、CG ソフトやゲームソフトを開発するための基礎知識と、基本 的なグラフィックスプログラミング技法を習得します。したがって、この講義の単位取得の条件は CG の理論をもとに自分で考えてグラフィックスプログラミングができるようになることです。 |
---|---|
到達目標 /Course Objectives |
プログラミングとは課題を解決する手順や方法を考えて、それをコンピュータが取り扱い可能な形式で記述することです。これを「プログラミング的思考」と言います。ですから、いくら教科書を読んでプログラミング言語の文法を覚えても、それだけではプログラムが書けるようにはなりません。自分でプログラムが書けるようになるには、実際にプログラムを書く(「コーディングする」と言います)前に、与えられた課題を分析して何を解かなければいけないかを明らかにし、それを問題自体から切り離して抽象化する必要があります。この講義では3DCGが対象とする物理現象を題材に、それを分析してモデル化し、手続きとして実装する能力を身に付けることを目標とします。 |
成績評価の方法・基準 /Grading Policies/Criteria |
・小テスト: 5.3 点×7 回≒37 点 ・ 宿題: 9 点×7 回=63 点 →提出せず: 0 点 →期限遅れ: 3 点 →期限内に提出: 6 点 →指示通り動作: 9 点 ・合計: 100 点 |
教科書 /Textbook |
資料を Moodle上に用意します。 |
参考書・参考文献 /Reference Book |
必要に応じて指示します。 |
履修上の注意 ・メッセージ /Notice for Students |
授業の内容はCGで用いられる各種の技術の「使い方」ではなく,それらを使ったシステムの「作り方」に関するものです。したがって、内容は数学にプログラミングを組み合わせたものとなります。また、そのような技術には自分で実装しなければ理解できない部分も少なくないので、課題の内容をこなすだけでなく、積極的に自分で試してみる意欲が必要です。 |
履修する上で必要な事項 /Prerequisite |
JavaScript 言語で WebGL を用いたプログラミングを行います。学術情報センターの演習室のパソコンを使用しますが、自宅等で宿題のプログラムを作成する場合は個人所有のパソコンにもソフトウェアをインストールしてください。テキストエディタには Visual Studio Code を使用し、それに拡張機能の Live Server インストールして実行します。 |
履修を推奨する関連科目 /Related Courses |
メディアプログラミング演習,CG制作演習,図形数理A,図形数理B,イメージ情報処理A,イメージ情報処理B |
授業時間外学修についての指示 /Instructions for studying outside class hours |
本授業の授業計画に沿って、準備学習に2時間、復習と毎回の授業で課す宿題に4時間を充ててください。さらに毎回の授業ごとに授業内容に関連する課題の調査・考察や宿題を拡張した独自の課題を設定し、自主的に学修することを求めます。 |
その他連絡事項 /Other messages |
記載事項なし。 |
授業理解を深める方法 /How to deepen your understanding of classes |
この講義では講義中に課す課題及び宿題で実際にプログラミングを行って、講義内容の理解とプログラミング能力の養成を行います。自分で宿題の実装方法は一つではないので、自分で試行錯誤して、自分の考える動作を実現してください。プログラミング,とくにデバッグという作業では、そのような試行錯誤の経験が非常に重要です。 【「アクティブ・ラーニング」実施要項 ③発見学習・体験学習、⑥学生自らが実施する調査やトレーニングを必要とする学習、⑦発展的な課題に取り組むことを促す仕掛けをともなう学習】 |
オフィスアワー /Office Hours |
水曜日・第2時限,北1号館7階710号室 |
科目ナンバリング /Course Numbering |
S21013J11100J320 |
No. | 回(日時) /Time (date and time) |
主題と位置付け /Subjects and instructor's position |
学習方法と内容 /Methods and contents |
備考(担当) /Notes |
---|---|---|---|---|
1 | 第1回 | 概要説明 | ・この授業の概要と講義日程、成績評価の方法、およびこの授業の前提となるコンピュータグラフィックスの基礎知識や課題の実施方法について説明します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
2 | 第2回 | 図形の描画 | ・コンピュータグラフィックスの立場から見たコンピュータのアーキテクチャやグラフィックスハードウェアの構造、それを用いたデジタル画像の生成、および WebGL の概要について解説します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
3 | 第3回 | 座標系と変換の理論 | ・2次元と3次元の座標変換の理論と WebGL による座標変換処理の実装について解説します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
4 | 第4回 | 形状の表現と操作 | ・形の情報をデータとして表現する方法と点や線文・三角形、および曲線・局面の図形要素の数理的解説と、それらの WebGL による描画について説明します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
5 | 第5回 | 隠面消去処理と陰影付け | ・3次元の図形を表示するための隠面消去処理と陰影付処理について解説します。また WebGL を用いた単純な3次元図形の生成と表示について解説します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
6 | 第6回 | スムーズシェーディングとテクスチャマッピング | ・表示図形の見かけを制御するスムースシェーディングとテクスチャマッピングについて解説し、その WebGL による実装方法について解説します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
7 | 第7回 | マウスとキーボード | ・インタラクティブなグラフィックス表示において必須となるマウスやキーボードなどのヒューマンインタフェースデバイスの取り扱いと、WebGL での利用について解説します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |
|
8 | 第8回 | アニメーション | ・アニメーションの原理と各種のアニメーションの技法、および物理シミュレーションによる運動の再現について解説します。 ・資料をもとに解説をしたのち、その内容に従って課題の実施方法に関する演習を行います。 ・事前準備として、あらかじめ資料を読み、内容を理解しておいてください。 |