| [演習内容] |
プロジェクト演習は,各講座にて,同じ進度で演習を行います.
プロジェクト演習は,各講座内で1〜3年生の学年混成グループ(各学年2名程度)を形成し,グループで決めたテーマについて, 半年という期間をかけて問題発見・問題解決法の提案までを行う,他大学にない, 全く新しい,縦割りのグループ演習です. 本演習は,平成19年度より適用される新カリキュラムに盛り込まれている, 新カリキュラムの目玉で,縦割り社会におけるコミュニケーションスキルおよび問題発見・解決能力の向上を目的としています.
取り組むテーマの分野は講座ごとに関連のある分野から見つけます. 教員は,何を決めればよいかの指導はしますが,基本的に議論の内容についての誘導は行いません. グループ内で全ての議論を行い,指定された期日までに一定のレベルの報告ができるように する過程を重要視しています.
本演習では,研究予算獲得を想定した研究計画の立案とそのプレゼンテーションを課題として掲げています. 予算獲得をするためには,新規性や有用性が必要なことは言うまでもなく,実験をするために必要な機材や 予算について,説得力のある綿密な計画を立てる必要があります.
本学部では,実際に研究計画の予算を獲得できるPBL(Project Based Learning)という研修制度が ありますので,優秀な研究計画には,何十万円もの予算が付く可能性もありますよ.
ソフトウェア演習A〜Cは,全ての講座で同じテキストを使い,同じ進度で演習を行います.
学習内容は,
といった基礎的な内容になります.
- ソフトウェア演習A: ワークステーションの使い方,レポートを書くためのソフトの使い方
- ソフトウェア演習B: C言語の基礎文法
- ソフトウェア演習C: C言語を使った基本アルゴリズムの実装
本講座においては,予習を前提として,演習中に分からなかったところを聞くスタイルをとります.
また,レポート提出は,先輩の内容チェックを受けてからでなければ提出できない規則としています. 修正するように指示される場合もありますので,余裕をもってチェックを受けるようにしてください.
下手をすると,レポートを完成させるよりもスケジュールを合わせる方が難しいかもしれません.
システム演習A〜Cは,講座ごとに内容が異なります.内容は,卒業研究に直結するような実践的なものになります.
本講座では,グラフィックスプログラミングのための基礎概念や,ある命題に対するアルゴリズムの設計を行います.
以下のような学習内容が主となり,システム演習Bで使う必須の知識になります.
- ポリゴンデータとその構造体設計
- 画像データの読み込みと画像変換
OpenGLを使った3次元グラフィックスプログラミング,2次元画像処理を行います. 演習で行うグラフィックスプログラミングは,研究で何かを実現(表現)するための道具として非常に有用な道具になります.
3次元グラフィクスでは,物体の回転やカメラの移動を実現します.それらを実現するためには,「行列」「ベクトル」「空間図形」といった知識が必要です(演習でも教えますが,高校の数学をしっかりやっておくと吉).
[3次元立体の操作] 3次元立体をマウス操作で拡大・縮小・回転させるプログラムを作成します.これには「行列」計算が必要となります.
![]()
![]()
サンプルプログラム(Windows版, zip圧縮, 370KB)
[使い方]
bunny.zipを展開後,bunny.exeをダブルクリックでプログラムを起動します.
マウスの左ボタンの上下左右で回転します.右ボタンを押しながら上下に動かすと拡大・縮小します.速度をつけてマウスを動かしながら左ボタンを離すと慣性がつきます.
ウサギのデータは,The Stanford 3D Scanning Repositoryのものを使わせて頂いています.
[学部内向け]
サンプルプログラム(Solaris版, 108KB)
データファイル(無圧縮, 643KB)
ライブラリ(glut, Solaris版, 465KB)
[使い方]
ファイルを全て同じディレクトリに保存し,
「chmod 755 pview」
「pview bunny.ply」
で実行します.
使い方はWindows版と同様です.
(*)本講座のWS以外での動作は保証しません.[空間内の移動] カメラ(視点)をマウス操作で動かすことにより,空間内をウォークスルーできるプログラムを作成します.
任意の方向にカメラを向けたり,壁で跳ね返りをするには,「ベクトル」計算が必要となります.
![]()
![]()
サンプルプログラム(Windows版, zip圧縮, 127KB)
[使い方]
walk.zipを展開後,walk.exeをダブルクリックでプログラムを起動します.
マウスの前後で前進後退,左右で左右旋回,中ボタン(ホイール)でジャンプします.前進後退は,速度をつけてボタンを離すと慣性がつきます.
[学部内向け]
サンプルプログラム(Solaris版, 108KB)
ライブラリ(glut, Solaris版, 465KB)
[使い方]
マウスの右クリックで保存してください. ファイルを全て同じディレクトリに保存し,
「chmod 755 walk」
「walk」
で実行します.
使い方はWindows版と同様です.
(*)本講座のWS以外での動作は保証しません.[おまけ] UNIXで作成した(コンソールベースの)OpenGLのプログラムはメニュー等の機能が弱く,他人に使ってもらおうと思うと,使いにくいことがよくあります. 以下のサンプルを使えば,最小限の変更でWindowsのメニュー等が使えるようになります.
ただし,マウスのクリックやドラッグ等の簡素なものにしか対応していませんのであしからず.
[使い方]
OpenGL2Win32.zipを展開後,GL4Win.dswをダブルクリックでプロジェクトを立ち上げます.あとはコンパイル・実行すれば,立方体を表示するプログラムが起動します.
使うときには,README.txtを読み,自分のOpenGLのプログラムを変更してください.
Win32API化サンプル(zip圧縮, 15.4KB)
卒業研究見習いとして,卒業研究生や大学院生の下につき,研究テーマについての調査を行います.
上記の調査を行い,徹底的な発表練習を行うことで,研究分野における基礎知識とプレゼンテーション能力の獲得を目指します.
- 関連分野の用語調査
- 関連分野の文献調査
そして,
テーマは与えられるものではなく,自分で見つけるものです そのために,
といったことを徹底的に追求しますし,それができるように指導しています.
- 何をすべきか
- どうしてそれをすべきなのか
- 何が問題なのか
- どうやって解決すればよいか
- 基礎実験をしてみたらどうなるか
多くの発表をこなすことで,4年生,大学院生と,年数を重ねるごとに考える力・発表能力は飛躍的に向上します. これらの能力は,どの分野に行っても通用する万能の能力です.