メディア基礎演習 II
グループ F ゲームプログラミング
目的
Processingをつかったゲームプログラミングの基礎とクラスの概念を学ぶ
背景
ゲームプログラミングとクラス
ゲームのプログラミングと、一般のプログラミングの違いって?クラスとは?何を学ぶべき なの?(演習手順書から引用してよい)
理論
Processingとは
Processing とは何か、歴史、だれが作った、こんなことができる、など。
(特に調べる時間がない場合は演習手順書から引用してよい) ゲームプログラミングの基礎
ゲームを作るためには?
自己学習の楽しみ
まずは楽しむこと。自分が楽しくないものは続かない。
ゲームプログラミングにおけるクラス化
ゲームプログラミングにおけるクラス化の必要性と重要度について。また、応用方法など。
方法
成功しただけでなく、躓いたり失敗したりしたことを載せても構わない。演習内
で行ったこと、起きたことのまとめになる必要がある。
実験4-2:Processing のセットアップと、Examples の起動
ダウンロードしたのか出来たのか。Examplesは何を起動させたのか。など
実験4-3:MyClock を作る
Clockの起動から、MyClockが出来るまで。どのようなオリジナリティを実装し たのか。
実験4-4:MyClock を Export し、ブラウザや exe のデザインを考える
ここでは、人に渡すためにデザインを考えて、exeやhtmlにする。手順は手引書を 参考に。
実験4-5:Setup と Draw の違いと、それを使ったアニメーション この違いはなんなのか。どのようなアニメーションを作ったか。
実験4-6:クラス化された BounceBall アニメーション 起動の確認と、コードの理解のために改変をしてみる。
実験4-7:Collisionのソースコードを改変しよう
このExamplesの使用をつかみ、どのように改変したいか。また、どこの記述が何を 示しているのか。
結果
各項目にはスクリーンショットを用いて、見やすくわかりやすいレポートにしよう
実験4-2:Processingのセットアップと、Examplesの起動 起動ができているのか、Examples の何を起動してみたのか
実験4-3:MyClockを作る
Examples の Clock をどのように改変させたのか、ソースコードなどの貼りつけなどしどう してそのような改変を加えたのか
実験4-4:MyClockをExportし、ブラウザやexeのデザインを考える ファイルの起動確認や、ブラウザでの確認画面などを載せてほしい
実験4-5:SetupとDrawの違いと、それを使ったアニメーション
この二つの違いが伝わるようなプログラムを組む。難しさではなく、二つの違いが分かるよう に自分で考えてみる。違いに気づくことが重要。
実験4-6:クラス化されたBounceBallアニメーション
このBounceBall のプログラムの実行と、内容理解のためのソースコードの改変など。自分が どのような考えで改変したのか、また出来なくても考えたことなども記入。
実験4-7:Collisionのソースコードを改変しよう
Examples にある Collision を利用して、クラス化を実装しよう。課題の項目に従い順番にソ ースコードを改変出来たら、クラス化をどのように使ったらよいかを考えよう。
課題
レポート課題1
演習の手引きに従ってまとめてみる。より分かりやすく、人に伝えることを念頭 に置いて書いてみよう。
だいたい3項目ぐらいをExamplesから探し、「名前、階層、スクリーンショット、
概要」をまとめていく。
【例】
Bounce(Topics→Motion→Bounc e)
画面端を検出してボールが跳ね返る ようなアニメーションを描くサンプル。 冒頭の「int size = 60」;でボール
(Ellipse)の幅を指定しているが、あ まり大きな値(たとえばsize=200)を 指定するとボールの反射が働きすぎて うまく動かない。この問題は画面サイ ズを大きくすることで回避できる(ス クリーンショット参照)。
レポート課題2
どのようなWebにしたのか。なぜそうしたのか、など。レポートにはHTMLを張 るわけには行かないので、スクリーンショット必須。
レポート課題3
BounceBallの説明。そのための内容理解をして、引っかかったところや自分なり の改変などをアピールしてほしい。
考察
特に評価する点であるのでしっかり書くこと!
オリジナルの作品としての表現性も評価するが、技術的関心、着眼、チャレンジがあるかとい った点も高く評価する。逆に、単なる感想や推測にとどまる考察、著作権侵害などは大幅に減点。
以下に考察のためのネタを提供しますので、興味を持てたものを中心に各々5 行以上は書い てくること。
・Processing を使って何が作れるか。有名な作品があれば紹介。
・Processing を作った人々について。 ・オープンソースとは何か。
・Processing のライセンスについて。 ・自作のゲーム制作および解説。
・Processing の外部プラグインを探し、サンプルプログラムを作って解説。 ・できるだけ短いコードで虹を描いてみる。
その他に、提供ネタを中心に書いてくる。注意事項にも書いたが、ねつ造は厳禁。わからないな らわからないで、研究室を訪ねるなど行動しよう。また、関係あることなら自分なりに調べてき てもOK。
その他 参考文献
どこで、誰の何を利用したかしっかり書きましょう。書くことで自分のレポートの信頼度も上 がる作業なので、プログラムを作った後でも参考文献を調べ、対応するページなどを確認する癖 をつけよう。参考図書、Web サイトなど、レポートには参考にしたソースを明記すること。
<ウェブサイト>
Processing(本家・公式) http://processing.org/
Wikipedia「Processing」 http://ja.wikipedia.org/wiki/Processing Processing日本語サイト http://processing.jp/about/
Proce55ing(日本語情報) http://tetraleaf.com/p5_reference_alpha/info.html
Ben Fry ( The aesthetics + computation in MIT ) http://acg.media.mit.edu/people/fry/ Casey Reas (GroupC) http://www.groupc.net/
JRC313(Game) http://www.jrc313.com/processing/game/play.html
こどものもうそう Blog(米光一成:「ぷよぷよ」の作者)http://blog.lv99.com/?eid=823769
<書籍>
「Build with Processing[改定版]」 前川 峻志, 田中 孝太郎, ビー・エヌ・エヌ新社
「WiiRemote プログラミング」 白井 暁彦, 小坂 崇之, くるくる研究室, 木村 秀敬, オーム社開発部