初心者でも本格的ゲームがつくれる! Unity講座 (第三回 Unity ちゃんを操作する)

前回に引き続き Unity ちゃんに命を吹き込みます。
今回の作業を実施することで、キーボードから Unity ちゃんを操作できるようになります。

Rigidbody を設定し、Unity ちゃんを重力化の制御に置く

今の Unity ちゃんは、重力の影響を受けていない状態です。
つまり、Unity ちゃんの Position Y を10 などにして、再生ボタンを押すと、Unity ちゃんが宙に浮いた状態になります。

そこで、Unity ちゃんを重力の影響を受けるようにするため、Rigidbody というコンポーネントを追加します。

コンポーネントとは、オブジェクト(今回の場合 Unity ちゃん)に追加するもので、オブジェクトのふるまいや特性などのイメージです。
Unity ちゃんの位置を示す Transform も、コンポーネントのひとつです。

Rigidbody は、オブジェクトに物理的な挙動を付加するためのコンポーネントです。
実際に設定してみましょう。

  1. Hierarchy で Unitychan を選択した状態で、Inspector の[Add Component]をクリックします。
  2. u2_1

  3. Physics > Rigidbody を選択します。
  4. u2_2

    u2_3

再生ボタンを押すと、Unity ちゃんが落ちていきます。
これは、重力の影響を受けるようになった証拠です。

しかし、困ったことに床を通り抜けてしまいます。

u2_4

床に着地させるために、Capsule Collider を設定する

Unity ちゃんが床を通りぬけてしまう原因は、Unity ちゃんと床の間に衝突判定がないためです。
衝突判定とは、何かと何かがぶつかったことを判定することです。

衝突判定を付与するため、今度は Capsule Collider というコンポーネントを追加します。

  1. 先ほどと同様に Hierarchy で Unitychan を選択した状態で、Inspector の[Add Component]をクリックします。
  2. Physics > Capsule Collider を選択します。
  3. u2_2
    u2_5

  4. Inspector に、Capsule Collider という項目が追加されます。
  5. 設定値を以下のように変更します。
  • Center の Y: 0.7
  • Radius: 0.3
  • Height: 1.5

u2_6

Scene ビューをみると、Unity ちゃんを囲むように、緑の枠線ができます。
これが、衝突の境界線です。

u2_7

では、再度再生ボタンを押してみましょう。
Unity ちゃんが床に着地してくれます。

Unity ちゃんにアニメーションを付与し、動かせるようにする

最後に、Unity ちゃんに動きをつけます。

  1. Hierarchy で Unitychan を選択した状態で、Inspector の Animator の Controller 列の小さい○ボタンをクリックします
  2. u2_8

  3. 選択の画面ができますので、Locomotion を選択します。
  4. u2_9

  5. さらに、Inspector の[Add Component]をクリックし、Script > Locomotion Player を選択します
  6. u2_10

    u2_11

Animator で選択した Locomotion は、アニメーションを付与するための作業で、Script > Locomotion Player はそのアニメーションを操作・制御するのための作業というイメージです。

再生ボタンを押してみましょう。
キーボードの矢印キー、もしくは、W A S D キーを押してみます。

Unity ちゃんが動いた!

u2_12

!?

しかし、こけます。

こけないようにするために、最後の設定をします。
再生を停止し(再生中に設定した変更は反映されません。ここまで説明していませんでしたが、設定変更は再生を終わらせてから実施してください)、Inspector の Rigidbody の項目で、Freeze Rotation の x y z にチェックをいれます。

u2_13

これにより、Rigidbody の各軸(x,y,z)に対する回転が無効化されるため、Unity ちゃんがこけなくなります。

では、再生ボタンを押して動きをたしかめてみましょう!

楽しそうに Unity ちゃんが走りまわってます♪

u2_14

まとめ

以上で Unity ちゃんに命を吹き込む作業を完了です。
ここまでで、なんとなく Unity の使い方がわかっていただけたら幸いです。

次回は、キーボードでキャラを動かすことについて、もう少し根本的に研究してみます。