こどもから目指すゲーム開発者 #9『Unityでキャラを設定する』

こんにちは。KTです。

今回はプレイヤーキャラクターの設定をしていきます。

プレイヤーキャラクターを設置しよう

まず下の図のようにPlayer.pngをHierarchyにドラッグアンドドロップしてください。

するとPlayerオブジェクトができるのでInspectorのTransformのPositionのxを「-7」にしてください。

キャラクターに重力をつけよう

次にプレイヤーキャラクターに重力をつけて自然に落ちるようにします。

HierarchyのPlayerをクリックしてInspectorのAdd Componentをクリックしてください。

また、下の図のようにPhysics 2D>Rigidbody 2Dを選択して追加してください。

これでプレイヤーキャラクターに重力がつきました。
また、Inspectorの追加したRigidbody 2Dを下の赤枠のように数値を設定してください。

Gravity Scaleは重力の大きさです。1で地球上と同じで大きくするほど重力は強くなります。
Constraintsは回転と移動の制限です。Freeze PsitionのXとYにチェックを入れると縦方向や横方向にだけ移動するようになります。また、Zにチェックを入れると回転しなくなります。

Freeze PositionのZにチェックを入れる理由は「キャラクターに当たり判定をつけよう」で説明します。

・gravity:グラビティ。重力。
・scale:スケール。規模
大きさ。
・constraint:拘束=行動の自由をしばること。
・freeze:フリーズ。氷結。

ゲームを動かしてみよう

ここで一度プレイヤーキャラクターに重力がついたかの確認をしてみたいと思います。

下の図の赤で囲まれているボタン(再生ボタン)を押してください。

プレイヤーキャラクターに当たり判定をつけていないので地面をすりぬけてしまいますが、重力により落下したと思います。

キャラクターに当たり判定をつけよう

HierarchyのPlayerをクリックしてInspectorのAdd Componentをクリックしてください。

また、下の図のようにPhysics 2D>Box Collider 2Dを選択して追加してください。

下の図のようにキャラクターに緑色の枠線が追加されました。
これが当たり判定になりますがキャラクターの絵に合わせて判定を調整したいのでInscpectorから下の図の赤枠のように数値を設定してください。
Offsetは緑枠の位置でSize緑枠の大きさを設定できます。

・offset:オフセット。差し引き計算する、相殺する。
・size:サイズ。大きさ。

またPlayerのInspectorからAdd Componentをクリックして下の図のようにPhysics 2D>Circle Collider 2Dを選択して追加してください。

下の図のようにキャラクターに緑色の円が追加されました。
これもまた当たり判定になります。Inscpectorから下の図の赤枠のように数値を設定してください。
Offsetは緑枠の位置でRadiusは円の半径になります。

キャラクターの下の方の当たり判定を円形にする理由はブロックなど角のあるオブジェクトに引っかからないようにするためです。

それではゲームの再生ボタンを押して動かしてみましょう。

地面をすり抜けなくなり立つことができました。
ここで重力の話で出てきたFreeze PositionのZのチェックですが、チェックを入れないと重力と円形の当たり判定でキャラクターが倒れてしまいます。
チェックを入れたおかげで回転しないというわけです。

次回はプレイヤーキャラクターを動かせるようにしたいと思います。

タイトルとURLをコピーしました