【Unity C#】カメラを追従させる
カメラがオブジェクトを追従する仕組みを見ていきましょう。
前回のCubeが浮上するシーンをもとにして、作成します。
これを、MainCameraの撮影画面がCubeを追いかけるように、プログラミングしてみましょう。
動きをつけるのはMainCameraになるので、ここに新しくスクリプトを付けます。
CameraOffset.csを作成し、MainCameraにアタッチしましょう。
コードは下記のように記述しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraOffset : MonoBehaviour { public GameObject target; //追いかけるターゲット private Vector3 offset; //ボールからカメラまでの距離 void Start() { //距離の情報を取得 offset = transform.position - target.transform.position; } void LateUpdate() { //距離を保ちながらカメラを移動 transform.position = target.transform.position + offset; } } |
MainCameraのインスペクターに、ターゲット(target)の項目が表示されています。
ここには、Cubeを入れましょう。
プレイしてみます。
Cubeに対して一定距離を保ちながら、追従して撮影します。