カメラにもスクリプトを追加しよう

カメラがプレーヤーに追従するスクリプトを書いてみよう

変数を宣言する際にpublic GameObject playerのように、頭にpublicを追記すると、Unityエディタから値を見ることができるようになります。
publicな変数とする事で、Unityエディタからドラッグ&ドロップでゲームオブジェクトを登録する事ができるようになります。
また、ゲーム開始時のカメラとプレーヤーの位置関係をoffsetという変数を作成して保持するようにし、それを元に毎フレームのカメラの位置を算出して、移動させましょう。
public class CameraScript : MonoBehaviour
{
// 追いかけるターゲット
public GameObject player;
// 自分とターゲットの座標の差分
private Vector3 offset;
void Start()
{
// 自分とターゲットの座標の差分をメモする
offset = transform.position - player.transform.position;
}
void Update()
{
// ターゲットの座標に、差分を追加した座標にカメラを移動させる
transform.position = player.transform.position + offset;
}
}
- 5. スクリプトを追加しよう
- 実運用では、被写体の移動が物理更新(FixedUpdate)で行われる場合にカメラは
LateUpdateで追従させると滑らかになります。