最初に「2D風の画面設定」を行います。
・シーンギズモの「Y(黄緑色)」をクリックして、「真上から見るモード」に変更しましょう。
・次に「Directional Light」の高さを「30」にしましょう。
(画面背景の色を変える)
・「Main Camera」をクリック
・「Clear Flags」を「Solid Color」に変更
・「Background」をクリックして好きな色に変更する。
画面設定ができたら次は、プレーヤー(自機)を配置します。
・「StarSparrow」→「Prefabs」→「Example」を順にクリック。5種類のプレーヤーデザインが用意されているので好きな物を選んで「開発シーンにドラッグ&ドロップ」してください。
・名前を「Player」に変更しましょう。
・「Positionは(0,0,0)」「Rotationは(0,180,0)」に変更してください。これで画面上向きにプレーヤーが設定できます。
*Playerの大きさ(Scale)については好きなように設定してください。
(Playerを動かす)
・新規C#スクリプトを作成→名前を「PlayerMovement」に変更しましょう。
・下記のコードを記載してください。
・コードが書けたらチェック→「Player」オブジェクトにスクリプトをつけましょう。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMovement : MonoBehaviour {
	public float moveSpeed = 0.2f;
	void Update () {
		float moveH = Input.GetAxis ("Horizontal") * moveSpeed;
		float moveV = Input.GetAxis ("Vertical") * moveSpeed;
		transform.Translate (moveH, 0.0f, moveV);
	}
}
再生ボタンを押して動きを確認しましょう。
キーボードの十字キーで前後左右に動けばOKです。
(ここがポイント!)
「左右」と「前後」の動きが、十字キーの入力と「逆」になっていると思います。
これはなぜでしょうか?
理由を考えてみましょう。
自分で理由を考えたら、下記のようにコードを変更しましょう。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMovement : MonoBehaviour {
	public float moveSpeed = 0.2f;
	void Update () {
		// Inputの前に「-」を付ける。
		float moveH = -Input.GetAxis ("Horizontal") * moveSpeed;
		float moveV = -Input.GetAxis ("Vertical") * moveSpeed;
		transform.Translate (moveH, 0.0f, moveV);
	}
}
変更ができたらチェック→再生して動きを確認しましょう。
(プレーヤーが移動できる範囲を制限する)
今のままではプレーヤーが画面の外に出てしまいます。
そのためプレーヤーが移動できる範囲を制限してみましょう。
次のコードを「追加」(★部分)してください。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerMovement : MonoBehaviour {
	public float moveSpeed = 0.2f;
	// ★追加
	private Vector3 pos;
	void Update () {
		// Inputの前に「-」を付ける。
		float moveH = -Input.GetAxis ("Horizontal") * moveSpeed;
		float moveV = -Input.GetAxis ("Vertical") * moveSpeed;
		transform.Translate (moveH, 0.0f, moveV);
		// ★追加
		Clamp();
	}
	// ★追加
	// プレーヤーの移動できる範囲を制限する。
	void Clamp(){
		// プレーヤーの位置情報を「pos」という箱の中に入れる。
		pos = transform.position;
		pos.x = Mathf.Clamp (pos.x, -7, 7);
		pos.z = Mathf.Clamp (pos.z, -5, 5);
		transform.position = pos;
	}
}
・コードのチェックまで完了したら、再生して移動範囲を確認してみましょう。
*実際の移動範囲は自由に決めて変更してください。
(ポイント)
範囲を決める場合には「Clamp」という関数(メソッド)を活用します。
Clampの使い方は「Unityの公式リファレンス」で確認してみましょう。




