ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

Unityで 2DRPG を作る - プレイヤーにカメラを追従させる方法

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);
    }
}
設定追加
  1. [Main Camera]を選択します。
  2. [Inspector]->[Camera(Script)]->[Player]に[Player]を追加します。

f:id:a1026302:20200907185310j:plain

動作確認

プレイヤー移動に合わせてカメラが追いかけてくれるようになりました。
f:id:a1026302:20200907185208g:plain