Java ゲーム プログラミング

シューティングゲームを作ってみようの連載第1回目。まずは、雛形の作成です。
- Page 1 - << 先頭のページ< 前のページ次のページ >最後のページ >>



自機を作りましょう!

このページには、以下のサンプルを掲載しています。 下の項目をクリックをすると各サンプルにジャンプします。 ※2週間以内の新着記事はNewアイコン、更新記事はUpアイコンが表示されます。

まずは、自機を作ってみましょう
Javaは、オブジェクト指向な言語なので、オブジェクト指向的にゲーム内の各キャラクターを個々のオブジェクトと考えてプログラムしていきます。 で、自機もひとつのオブジェクトと考えて自機クラスを表現してみたいと思います。
クラスの中には、大きく分けて2つのものを定義します。その2つとは、そのクラスが持っている値とその クラスが行う振る舞い(動作)です。
値は、クラス変数。動作は、メソッドと呼ばれています。
で、自機クラスの場合。。。
 値:自機クラスの形(図形とかイメージ画像とか。。。)
 値:自機クラスの表示位置(X座標、Y座標)
 動作:自機を右に動かす
 動作:自機を左に動かす
 動作:自機を任意の表示位置に設定する
 動作:自機を画面に描画する
まぁ、取りあえずこんな感じでしょうか
作っていく上で足りないものがあればその都度付け足していきましょう。
それでは、ひとつひとつ見ていきましょう。
・自機クラスの形の定義
イメージ画像、図形、複合図形などなど方法は、いくつかありますがここでは、Polygonクラスを使って定義します。 もちろんイメージ画像などを使ってかっこいいキャラクターをデザインしても良いと思います。 自機クラスは、クラス変数として下図のような座標情報を設定したPolygonオブジェクトを持つことになります。


それでは、ちょっとプログラムを書いてみましょう
■自機クラス雛形 (Gun.java)
  1. public class Gun {
  2.   private Polygon p;
  3.   public Gun() {
  4.     int[] xlist = {  0,  0,  8, 13, 18, 26, 26,  0 };
  5.     int[] ylist = { 15,  5,  5,  0,  5,  5, 15, 15 };
  6.     p = new Polygon(xlist, ylist, xlist.length);
  7.   }
  8.   public void draw(Graphics2D g2) {
  9.     g2.setColor(Color.YELLOW);
  10.     g2.fill(p);
  11.     g2.setColor(Color.BLACK);
  12.     g2.draw(p);
  13.   }
  14.   public void moveLeftGun() {
  15.   }
  16.   public void moveRightGun() {
  17.   }
  18.   public void setGun(){
  19.   }
  20. }

自機クラスは、アプレットクラスではないのでアプレット上に表示するためには、 アプレットクラスを作成します。そこから自機クラスのオブジェクトを作成して自機オブジェクトを操作します。
■アプレットクラス雛形 (ShootGame.java)
  1. package sample.game;
  2. import java.awt.Graphics;
  3. import java.awt.Graphics2D;
  4. import javax.swing.JApplet;
  5. public class ShootGame extends JApplet {
  6.   public Gun gun = new Gun();
  7.   public void paint(Graphics g) {
  8.     Graphics2D g2 = (Graphics2D)g;
  9.     g2.clearRect(0,0,getWidth(), getHeight()); 
  10.     gun.draw(g2);
  11.   }
  12.   public void update(Graphics g){
  13.     paint(g);
  14.   }
  15. }

これを実行すると下のような感じになります。

※アプレットの表示領域は、width="200"、height="200"で設定
もちろんこのままですと自機は、左上に表示されたまま動かすことは出来ません。 自機の表示位置を変えたりキーボード入力によって動かしたり出来るように細工をする必要があります。
次回は、自機の表示位置を変更できるようにします。

- Page 1 - << 先頭のページ< 前のページ次のページ >最後のページ >>


最終更新日:2019/02/13

2015-03-01からの訪問者数
  1809 人