キー操作を取得する
ゲームにスクリプトを追加することができました。スクリプトの中でキャラクターを移動させることもできました。
今度は、ユーザーのキー操作に合わせてキャラクターを移動させてみましょう。
入力処理の取得
キーボードの矢印キーに合わせてキャラクターを移動させることにします。
Updateメソッドを以下のように書き換えます。
void Update () {
// キーの入力方向を取得する
float horizontal = Input.GetAxis("Horizontal");
// キャラクターに加える力にキーの方向を反映させる
this._charactor.rigidbody2D.AddForce(Vector2.right * 10f * horizontal);
}
ゲームを実行すると、キー操作に合わせてキャラクターが移動するのが分かると思います。
コードの解説
ほんの少しの修正で、キー入力でキャラクターを移動させることができました。このように少ない手間でゲームの処理が追加できるところがUnityの2Dゲーム開発機能の魅力です。
Inputクラス
入力を取得します。今回はGetAxis("Horizontal")として水平方向の入力を取得しました。キー操作が左方向の場合horizontalには-1が、右方向の場合には1が入ります。
AddForceメソッドの方向にhorizontalを掛け合わせてあげることで、右方向の力と左方向の力を分けることができます。
まとめ
Unityの2Dゲーム開発機能によるプログラミングはいかがでしたか。短いコードでキャラクターが左右に動いたことに驚かれたのではないでしょうか。次回はキャラクターのジャンプ処理を実装する方法を紹介します。
