当たり判定エディタを作る
文章:syun
日付:2005/01/30

目次
1.はじめに
2.当たり判定エディタの仕様






1.はじめに
今回は、アクションゲームや格闘ゲームを作るのにあると便利な、
「当たり判定エディタ」の作り方を解説します。

単純なアクションゲームであれば、画像全体をやられ判定としてしまえばいいわけですが、
格闘タイプのゲームだと、画像のこの部分は攻撃判定、ここの部分はやられ判定というようにしなければなりません。

それをわざわざ画像ツールを立ち上げて、ピクセルを計るのはとても面倒です。

そこで、ツールを作って簡単にやってしまおう!というわけです。

ちなみにイメージとしては、こんな感じになります。
当たり判定エディタ
(…センスないですね、、。)
Delphi6.0のプロジェクトとEXEファイルです。(hitEditor.lzh)




2.当たり判定エディタの仕様
当たり判定エディタに必要な仕様は以下のようになります。
  1. 画像ファイルを読み込む
  2. 当たり判定を設定する
  3. 定数ファイルを出力する
1は当たり前ですね。まず画像を読み込みます。
2については、
相手にダメージを与えられる「攻撃判定」と、
自分がダメージを受ける「やられ判定」を設定する機能のことです。
イメージ図では、青い枠が「攻撃判定」、赤い枠「やられ判定」となっています。
マウスでぐりっと選択できるようにすると、使い勝手がよいでしょう。

そうやって、設定した当たり判定は矩形となりますので、
または、 というようにして、機能3「定数ファイル」として出力します。

例えば、C言語でしたら、
const int HIT_PLAYER[2][4] = {
  {15,20,30,32},
  {4,8,23,59}
};
というようにヘッダファイルとして出力します。

あとは、通常は画像は複数のパターンを持っていますので、
サイズを指定して読み込みを行い、パターンごとに当たり判定を指定できるようにします。

例えば、この地球外生物?のパターン画像を、
画像

32×64で抜き出すことによって、
抜き出し
こうなります。

これに、個別に当たり判定をつけられるようにします。




こういったツールは、色々と使い回しが効くので、一度作ってしまうことをオススメします。
以上、syunでした。