応用プログラミングⅠ

科目基礎情報

学校 仙台高等専門学校 開講年度 平成30年度 (2018年度)
授業科目 応用プログラミングⅠ
科目番号 0232 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 1
開設学科 情報システム工学科 対象学年 4
開設期 前期 週時間数 2
教科書/教材 「GLUT/freeglutによるOpenGL入門」床井浩平(工学社)
担当教員 髙橋 晶子,張 暁勇

到達目標

【学習・教育目標】
 (C)情報工学あるいは電子工学の分野で,人間性豊かなエンジニアとして活躍するための知識を獲得すること。

1.コンピュータグラフィックスで用いられている基礎的なアルゴリズムを理解する
2.OpenGLを用いて,基本的なコンピュータグラフィックス作品を制作できる
3.自分で立てた計画通りに開発を行い,一連ソフトウェア製作の流れを習得する

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
アルゴリズムの理解CGで用いられるアルゴリズムを理解し自分の言葉で説明できるCGで用いられるアルゴリズムを理解できるCGで用いられるアルゴリズムを十分に理解できない
CG作品の制作独自のアイディアを複数組み合わせて高度な作品を制作できる教科書等のサンプルに独自のアイディアを組み合わせて作品を制作できる独自のアイディアを含む作品を制作できない
ドキュメンテーション作品について適切に報告書を作成し分かりやすいプレゼンテーションができる作品について適切に報告書を作成できる作品について適切に報告書を作成できない

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

学習・教育到達度目標 1 情報システムの中核となるソフトウェアの知識とスキルの体系的で確実な修得
JABEE d 当該分野で必要な知識と応用能力

教育方法等

概要:
2年次,3年次で学習したプログラミングを基礎として,様々な分野で活用が進められているコンピュータグラフィックス(CG) の原理を理解し,作品制作を通してプログラミング能力を養う。
授業の進め方・方法:
前半は講義形式で解説を1時間程度行った後,OpenGLのプログラミング演習を行う。この時間に,CGで使用されている技術を体感することと,作品制作の課題を考えてもらいたい。後半は授業時間の全てを作品制作にあてる。作品制作中は,開発の進捗状況を把握するために中間報告書の提出を義務付けるので,計画通りに作業を進めていくこと。終盤には作品発表会を実施し,プレゼンテーションと最終報告書の提出をもって評価を行う。
注意点:
本科目は,プログラミング基礎,プログラミング,応用プログラミングIIと関連する。C言語の復習等は授業時間外に行っておくこと。また,前半の演習は授業時間外の復習を必須とする。次回までに不明点が残らないよう努めること。後半の作品制作でも授業時間外の作業もあらかじめ計画に含め,それに基づいて作業を進めること。報告書等については期限厳守であることにも注意しておくこと。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 イントロダクション OpenGLの環境を構築する
2週 2次元図形の描画 2次元図形を描画する
3週 3次元図形の描画 3次元図形を描画する
4週 モデリング 形状モデル&隠面処理を理解する
5週 レンダリング 光学的モデル&陰影処理を理解する
6週 マッピング I 基本的なテクスチャマッピングを理解する
7週 マッピング II 環境マッピングを理解する
8週 マッピング III 発展的なマッピングを理解する
2ndQ
9週 作品制作 課題設定,作品に使用する技術,アルゴリズムの設計,作業日程の計画ができる
10週 作品制作 中間報告書の提出ができる
11週 作品制作 課題設定,作品に使用する技術,アルゴリズムの設計,作業日程の計画ができる
12週 作品制作 課題設定,作品に使用する技術,アルゴリズムの設計,作業日程の計画ができる
13週 発表会準備 作品の説明,ソースコード,制作した作品に用いた技術をまとめることができる
14週 作品発表会 分かりやすいプレゼンテーション,デモンストレーションができる
15週
16週 作品発表会 分かりやすいプレゼンテーション,デモンストレーションができる

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。4
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。4
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。4
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4
ソフトウェアアルゴリズムの概念を説明できる。4
与えられたアルゴリズムが問題を解決していく過程を説明できる。4
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4
整列、探索など、基本的なアルゴリズムについて説明できる。4
時間計算量によってアルゴリズムを比較・評価できることを説明できる。4
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。4
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。4
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。4
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。4
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。4
問題を解決するために、与えられたアルゴリズムを用いてソースプログラムを記述し、得られた実行結果を確認できる。4
標準的な開発ツールを用いてプログラミングするための開発環境構築ができる。4
要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。4
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。4

評価割合

試験作品発表態度合計
総合評価割合4040200100
基礎的能力00000
専門的能力4040200100