Javaを用いたシューティングゲーム作成

Javaを用いたシューティングゲーム作成
07A1023
鐘ヶ江 哲平
はじめに
授業で学んだjavaプログラミングがおもしろかったので
javaで何かを作ろうと思った。シューティングゲーム
はルールが単純で、誰でもすぐにプレイできるので
シューティングゲームを作成することにした。
開発環境
OS
Windows XP および vista
プログラム、開発ツール
Java2SDK1.4.2
Cpad for Java2SDK
ゲームテーマ
片手で操作することができ、暇つぶしにちょっ
と遊べるマインスイーパーやソリティアのよう
なミニゲーム
ゲームの内容
横スクロール グラディウス
縦スクロール 東方シリーズ
奥スクロール スターフォックス
ゲーム内容
• マウスを使ったシューティングゲーム
• 自機は中央に固定
• マウスで画面内をクリックすることでその位置
に弾を発射する
• 敵を倒すのではなく、敵の攻撃を迎撃すると
得点
• 制限時間内でどれだけダメージを受けずにス
コアを伸ばせるかを競う
ゲーム内容
ゲーム内容
~自機について~
←自機 画面中央に配置、GIFアニメで作
成されており模様が動く
←自弾 マウス左クリック、もしくは右ドラッ
グでプレイヤーからカーソル位置に発射され
る。クリックの場合は一発ずつ、ドラッグの場
合は押し続けている間は、画面上に10発表
示されるまで連続で発射される。
ゲーム内容
~敵機について~
←敵機 自機と同じくGIFアニメで作成されている。 画
面四隅に配置されており、破壊することはできない
←敵弾1
画面上に2発、速
度が速く自機に向
かって一直線に向
かってくることも
←敵弾2
画面上に4発、GIFア
ニメーションで消えなが
ら移動する
←敵弾3
画面上に10発、速度
はないが、数が多く、い
ろんな方向に飛んでい
く
ゲーム内容
ゲーム内容
ゲーム内容
~スコアについて~
ゲーム終了後、獲得したポイントに応じてランクが表示される。
1000未満でランク0
1000以上2000未満でランク1
2000以上3000未満でランク2
3000以上4000未満でランク3
4000以上5000未満でランク4
5000以上でランク5
概要
本作品はフレームとパネルを使い作成されている
フレームとは
JFrameを拡張したクラスでいわゆる「ウィンドウ」のこと。
タイトルバーやメニュー、ボタン等を持ち、端をマウスカーソルで
ドラッグすることでサイズを変更できる、そういうウィンドウを「フレーム」
もしくは「フレームウィンドウ」という。
普通に「ウィンドウ」といわないのは、ボタン等も一種のウィンドウであり、
またフレームウィンドウの中にウィンドウが含まれる場合もあるためであ
る。
概要
パネルとは
JPanelを拡張したクラス。
JPanelクラスを使うことでパネルを作成することができる。
パネルはコンポーネントのひとつだが主な利用目的はコンテナとしての
利用である。
パネルにはボタンやラベルなどのほかのコンポーネントを貼り付けたり
レイアウトを設定することができる。その為、いくつかのコンポーネントを
まとめてレイアウト設定したい場合などによく利用される。
概要
フレームはアプリケーション本体
でアプリケーション開始点である
main()を持つ。
フレームクラス自体はたいしたこと
をしておらず、タイトルを設定し、
フレームクラスのcontentPaneと
いうところにパネル(MainPanel
オブジェクト)をadd()ではりつけ
ているだけである。
概要
画面への描画などの処理はパネルがすべて担当してお
り、フレームはパネルを乗せる単なる土台にすぎない。
概要
私のプログラムではMain.classがフレーム、MainPanel.classと
InfoPanel.classがパネルとなっている。
自己実行型Jarファイル
• この作品はJarファイルにまとめてある。Jarフ
ァイルにまとめると、いちいちコンパイルする
必要がなく、ダブルクリックで実行することが
でき、そのほかにも「HTTPトランザクションの
節約」や「ファイル領域の効率の良さ」などの
メリットがある。
まとめ
Javaゲームプログラムのサイトや参考書より基礎を学び、
ゲーム作りの楽しさを学ぶことができた。
苦労したところは、ソースプログラムとソースプログラムを
つなげる際に出るエラーを発見し取り除くこと。
作品の課題としては動作を早くするためのコンパクトなプロ
グラムを考えること。他にもアイテムや敵弾のパターン等より
面白くするための要素を追加することなどが挙げられる。
ご静聴ありがとうございました。