Processingで作る、300行の3Dスペースシューティング

前回が2Dだったので、今回は3Dのゲームを作ってみました。

SpaceShootingサンプル

マウスカーソルを動かして向きを変えて、左クリックで弾を発射です。右クリックかスペースキーで加速、離すと減速です。10体の敵をすべて倒せばクリアです。

何秒で敵を殲滅できるでしょうか。

プログラムするときに困ったのは、pushMatrixやpopMatrixはあるのに、Matrixを取ってくる関数やMatrix型がリファレンスに無かったこと。Matrixなしで3Dゲームは辛い……。いや、普通あるだろう――とWebでいろいろ検索してみたらgetMatrixとか、PMatrixとかありまして、おかげで無事プログラムできました。

今回はClassも使ってしまいました。ProcessingのIDE(=PDE)は、クラスを別ファイル(別タブ)にして扱ったりもできるのですが、あえて1ファイルにしてあります。

宇宙モノはモーションいらないし、背景の星も点や球でよいので楽ですね。

続報

3/5にこのゲームの画面をMovieで出力する解説を追加しました。



Trackback(0)