あたり判定矩形

もくじ


あたり判定矩形とは

当たり判定とは、物体同士が接触したことを検知することをいいます。
その判定の際に使用する矩形を「当たり判定矩形」とよびます。

たとえば、右図のような状態では、マップチップで構成された床と
オブジェクトの当たり判定矩形が接触しているので、オブジェクトは
下に落ちることなく、床の上でとどまっています。
(床には通行可否設定を施してあります。)

ステージデザイナーでは、2種類の当たり判定矩形があります。
通行の判定矩形 通行可否設定で「通行不可」情報が設定されたマップチップ(もしくはほかのオブジェクト)と
当たり判定矩形を判定し、マップチップ(もしくはほかのオブジェクト)を通り抜けないように
する矩形
オブジェクト同士の判定矩形 オブジェクト同士の接触を判定して、イベントを呼び出す矩形
(判定がされたときに、「オブジェクト同士が触れたとき」イベント開始条件が実行されます。)
※上の図は「通行の判定矩形」を模したものです。


判定矩形編集画面

編集するオブジェクトを選んで、「当たり判定」タブを選択すると、以下のような画面が現れます。

(クリックで拡大)

それぞれのボタンが持つ機能は以下のようになります。
当たり判定矩形の新規作成をします。
選択された当たり判定矩形の削除をします。
編集画面(A部分)に表示される判定矩形の色を変更します。
(オブジェクト同士の判定矩形のみ)最外郭矩形を設定します。(最外郭矩形については後述します。)
移動係数を設定します。(詳しくは移動係数を参照してください。)
選択された矩形のアンカーを設定します。(アンカーについては後述します。)
編集画面(A部分)の表示倍率を変更します。
原点位置 編集画面(A部分)の原点位置を設定します。
表示画像の設定 編集画面(A部分)に表示するオブジェクト画像を設定します。
あたり判定レベル あたり判定レベルを設定します。(適用ボタンを押さないと設定が反映されません。)
(通行の判定矩形の場合のみ)
通行の判定をマップチップに限定するかどうかを設定します。
(このチェックが入っていない場合は、オブジェクト同士の通行の判定矩形によっても通行可否の処理が行われます)


判定矩形編集手順

以下に、判定矩形の編集手順を説明します。

1. 新規作成ボタン()を押して、矩形を新規作成してください。
このとき、作成したい矩形の種類を示すフォルダ(右図赤枠部分)を
選択してください。
2. @部分に作成された矩形が存在することを確認したら、それを選択します。
すると、編集画面(A部分)に矩形が現れます。
(オレンジ色の矩形はオブジェクトの外郭を表す線です。)

3. A部分に表示された矩形は、マウスのドラッグ操作で移動が可能です。また、
矩形部分をクリックすると、右図のようにサイズ変更点が表れるので、これを
ドラッグ操作によって移動することで、矩形のサイズ変更をすることができます。


最外殻矩形について

オブジェクト同士の判定矩形のみ、最外郭矩形という要素があります。
ゲーム実行中で、当たり判定は比較的処理の多い部分なので、判定量を減らす
目的で「最外郭矩形」を用います。
最外郭矩形の中に他のオブジェクトが入った(=当たり判定がされた)ときだけ、
ほかの当たり判定矩形の調査をするというしくみになっています。

よって、右図のように最外郭矩形が作られた場合、矩形@は正常に当たり判定が
行われますが、矩形Aについては最外郭矩形からはみ出した部分は判定が
行われません。

設定は簡単で、設定したいオブジェクト同士の判定矩形を選択し、
設定ボタン()を押せば、完了します。
(最外郭矩形を設定しなかった場合、オブジェクトの外郭がその役割を果たします。)


あたり判定レベルについて

各あたり判定矩形には、「あたり判定レベル」を設定することが
できます。
あたり判定された矩形の「あたり判定レベル」を見て、両者の
レベルが同一ならあたり判定されたとして処理をする機能です。
(レベルが違えばあたり判定処理は無効となります。)

この機能を使用すると、特定のあたり判定矩形のみを判定する
といった処理を簡単に実現することができます。
あたり判定レベル入力欄に任意のレベルの
値を整数で入力します。 (初期設定では0となっています。)
そのあと、「適用」ボタンを押すと
設定が適用されます。

右図設定例Aのように、区切り記号の
「,」(半角カンマ)を使用すれば、
複数の判定レベルを設定できます。
(入力が適切でなかったとき、実行時に
自動的に判定レベルが0に設定されます)


アンカーについて

オブジェクトがサイズ変更に対応している際に役立つのがアンカー機能です。
アンカーを打っておけば、サイズが変更されたときに、図のように
当たり判定矩形も一緒にサイズ変更されます。

設定したい当たり判定矩形を選択し、設定ボタン()を押すと
設定ダイアログが表示されます。あとはアンカーを打ち込みたい部分にチェックを入れ、OKボタンを押せば
設定完了です。