こんにちは、カバゴトです!今回はプレイヤーをカメラ追従させる方法について解説したいと思います!
前回の記事で、wasdキーでカプセルが動くようにしました。
今回はこのようにカプセルの移動に応じてカメラが追従するようにします!
目次
追従スクリプト作成
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class followcamera : MonoBehaviour
{
private GameObject player;
public float yOffset ; // y軸方向のオフセット
public float zOffset ; // z軸方向のオフセット
// Start is called before the first frame update
void Start()
{
player = GameObject.Find("Player");
}
// Update is called once per frame
void Update()
{
float x = player.transform.position.x;
float y = player.transform.position.y;
float z = player.transform.position.z;
transform.position = new Vector3(x, y + yOffset, z + zOffset);
}
}
「Assets」→「Create」→「C#Script」でスクリプトを作成し、名前をfollowcameraにします。
このコードを「Main Camera」にドラッグ&ドロップでいれ、yoffsetとzoffsetの変数を入れることで追従するようになります。
具体的なコードの解説は下に示します。
- 最初のフレームが更新される前に1回だけここでは、Player(ここで言うカプセル)を探してして、それをplayerとする。
- Playerの位置(x,y,z)座標に合わせてカメラも移動する。(yoffsetとzoffsetは追従した際の視点の調整のために書いています。)
作ったスクリプトを「Main Camera」にドラッグ&ドロップし、右のyoffsetとzoffsetをそれぞれ2、-5にします。
これで完成です!
終わりに
最後まで読んでくださりありがとうございます!今回は、プレイヤーをカメラ追従させる方法について解説しました。もし、うまくいない場合や意見等あればコメントの方をよろしくお願いします!
この記事が参考になれば幸いです。また、次回のブログでお会いしましょう!
コメント