# Unity 3D CameraController
## 第一種
```C#=
public GameObject player;
private Vector3 offset;
void Start()
{
//計算相機跟目標物的位置
offset = transform.position - player.transform.position;
}
void Update()
{
transform.position = player.transform.position + offset;
}
```
## 第二種
直接在Update函數設置相機的位置跟旋轉
```C#=
public GameObject target_player;
public float x_offset, y_offset, z_offset;
// Update is called once per frame
void Update()
{
transform.position = target_player.transform.position + new Vector3(x_offset, y_offset, z_offset);
transform.LookAt(target_player.transform.position);
}
```
## 第三種
不用寫腳本的方法
windows---> package manager ---> in project改成unity rigistery ---> 找到Cinemachine --->安裝
點選main camera ---> creatae cinemaachineBrain
在Hirache按右鍵 ---> 新增Virtual camera --->在Lool AT的地方綁定要跟隨的對象
\完成相機跟隨/
###### tags: `unity`
{"metaMigratedAt":"2023-06-17T22:31:33.665Z","metaMigratedFrom":"Content","title":"Unity 3D CameraController","breaks":true,"contributors":"[{\"id\":\"9be48535-8f15-404d-8fdb-b01990d37456\",\"add\":918,\"del\":3}]"}