検索したい科目/教員名/キーワードを入力し「検索開始」ボタンをクリックしてください。
※教員名では姓と名の間に1文字スペースを入れずに、検索してください。
令和元年度以前入学者 | 数学講究2 | ||||
---|---|---|---|---|---|
教員名 | 中村英史 | ||||
単位数 | 3 | 学年 | 3 | 開講区分 | 文理学部 |
科目群 | 数学科 | ||||
学期 | 後期 | 履修区分 | 必修 |
授業の形態 | ウェブ会議システムを使用する。ただし、前期・数学講究1で使用したシステムを引き続き使用する - Zoom によるウェビナー形式でのテキスト解説とコーディング実習 - 状況を判断しつつ、可能であれば、一部対面授業を検討(実施日は学生と進捗を見て相談) Blackboard ID:20203154 |
---|---|
授業概要 | 前期に引き続き、IT 業界に長年身をおく教員が指導し、プログラミングの主要な結果表示方法である、コンピュータ・グラフィックスによる可視化のプログラミング技法を習得し、より高い価値を提供できる人材となるための基礎を固める |
授業のねらい・到達目標 | 1) ねらい - グラフィックスの数学的基礎である線形代数学のグラフィックスによる表現を実感する - 様々な数学の概念やよく知られた問題を、コンピュータ・グラフィックスによって表示することにより、所与の概念や問題を、自分だけでなく第三者に理解しやすく可視化するスキルを習得する - 幾何学的オブジェクトを操作する技法を習得する 2) 到達目標 - 低次元線形代数学の表現の表現実体としての 3D オブジェクトとその変換を、思う通りにプログラミングできるようになる - 概念や、無機質なデータを、幾何学的なオブジェクトとして自由に表現できるようになる - インタラクティブなインターフェースによって、エンド・ユーザの視点を取り入れたプログラミングができるようになる この科目は文理学部(学士(理学))のディプロマポリシーDP1, DP3, DP4, DP6 及びカリキュラムポリシーCP7, CP9に対応している。 なお新カリキュラム(令和2年度以降入学者対象)では,文理学部(学士(数学))のディプロマポリシー DP1~8 及びカリキュラムポリシー CP1~8に対応している。 ・学修から得られた豊かな知識と教養、及び、自己の倫理感に基づいて、数理科学の役割を説明することができる(A-1-2)。 ・現代社会における数理科学の役割を理解し、そのことを踏まえて、国際社会が直面している問題を説明することができる(A-2-2)。 ・数理科学に基づいて学んだ知識をもとに、物事の本質を論理的、客観的に捉えることができる(A-3-2)。 ・日常生活における現象に潜む数理科学的問題を発見し、内容を説明することができる(A-4-2)。 ・新しい問題に取り組む意識を持ち、そのために必要な情報を収集することができる(A-5-2)。 ・親しい人々とコミュニケーションを取り、数理科学の専門的知識について議論することができる(A-6-3)。 ・学修活動において、専門的知識を活かしつつ、自分の役割分担を理解し、他者と協働して作業をすることができる。 (A-7-3)。 ・学修状況を自己分析し、その成果を評価することができる(A-8-3)。 |
授業の方法 | 1) コンピュータ・グラフィックス・プログラミングの基礎を資料によって説明した後、実習する - 実習において。教員が、結果だけでなく、コーディング・スタイル、アルゴリズム、幾何学的概念とグラフィックスの技術の対応等にも言及して、幾何学をベースにしたモデル化を習得させる 2) グラフィックスは、差別化の有効な手段であることを認識して、そのセンスを磨く - C / C++ と OpenGL を使い、コンピュータのシステムに近いレベルでのグラフィックス・プログラミング・スキルを習得する - OpenGL の 2D / 3D の線形変換関数を使い、幾何学をコンピュータでモデル化する手法を習得する - ウィンドウ周りは、シンプルな GLUT を用いて、単純な可視化だけでなくインタラクティブ性の実装も習得する - モバイル機器が一般的になっている情勢に合わせて、Javascript と WebGL (Three.js) を使い、ウェブ・ブラウザ内でのグラフィックス・プログラミングの基礎を学ぶ。 3) レポートについては添削して指導する。 |
授業計画 | |
---|---|
1 |
OpenGL と GLUT 基礎: - イベント駆動型プログラム - ウィンドウの作成 (A-1..8-2) 【事前学習】C / C++ の復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
2 |
OpenGL と GLUT 基礎: - 2D 図形の描画 - 2D 図形の変換 (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
3 |
OpenGL と GLUT 基礎: - 座標系の変換 - ローカル座標系 (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
4 |
OpenGL と GLUT 基礎: - イベント処理:キーボード、マウス (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
5 |
OpenGL と GLUT 基礎: - アニメーション基本 - アニメーション応用 (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
6 |
OpenGL と GLUT 基礎: - 3D 図形の描画 - 透視射影と深度テスト (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
7 |
OpenGL と GLUT 基礎: - 視点変換 - ダブルバッファ (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
8 |
OpenGL と GLUT 応用: - 光源設定 - 陰影付け (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
9 |
OpenGL と GLUT 応用: - テクスチャ・マッピング (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
10 |
OpenGL と GLUT 応用: - 影ポリゴン - ステンシル・バッファ (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
11 |
OpenGL と GLUT 実践-1: - 太陽系、タートル・グラフィックス、イベント駆動アニメーション (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
12 |
OpenGL と GLUT 実践-2: - 太陽系、タートル・グラフィックス、イベント駆動アニメーション (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
13 |
Three.js によるウェブ 3D 基礎: - HTML 基礎 - Javascript コードの呼び出し - ローカルなウェブ・サーバー (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
14 |
Three.js によるウェブ 3D 基礎: - JavaScript によるグラフィックス (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
15 |
Three.js によるウェブ 3D 基礎: - スマートフォン用アプリの基本 (A-1..8-2) 【事前学習】前回のプログラミング復習 (3時間) 【事後学習】練習問題の完了 (2時間) |
その他 | |
---|---|
教科書 | 特に無し |
参考書 | 数学科計算機室や図書室に備えてある参考書や関連ウェブ・サイト |
成績評価の方法及び基準 | レポート(10%)、授業参画度(90%) レポートは議論の正確さと学修内容の理解度を中心に評価する。 ゼミ内でのプログラミングの進捗状況及び練習問題の完成度の他、自分が何がしたいのか、そのためには何をすべきなのか、障害となる問題点は何か、などを論理的に説明できるようになっているか、などコミュニケーション能力も授業参画度として評価する。 能力(A-1)から(A-8)の習熟度については、別途配布のチェック項目により評価する。 |
オフィスアワー | 質問などの連絡先は講義中に指示する |