Unity で 2DRPG 作りに奮闘してます。
今回はプレイヤーを動かすことができるようになったけれど、画面が固定されていてプレイヤーを動かしているとフレームアウトしてしまうという問題にぶちあたったので、プレイヤーの移動に合わせてカメラを追従させる方法についてまとめてみました。
やりたいこと
- 操作キャラクタにカメラを追従させたい
- キャラクタをフレームアウトさせない
準備するもの
カメラ追従用に操作できるキャラクタの設定
キャラクタの設定は以下のものを使用します。
a1026302.hatenablog.com
設定
スクリプト準備
以下のスクリプトを準備します。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class camera : MonoBehaviour { public GameObject player; // Use this for initialization void Start() { } // Update is called once per frame void Update() { Vector3 playerPos = player.transform.position; //カメラとプレイヤーの位置を同じにする transform.position = new Vector3(playerPos.x, playerPos.y, -10); } }
設定追加
- [Main Camera]を選択します。
- [Inspector]->[Camera(Script)]->[Player]に[Player]を追加します。
動作確認
プレイヤー移動に合わせてカメラが追いかけてくれるようになりました。