public class CameraController : MonoBehaviour
{
public GameObject player;
private Vector3 offset;
private void Start()
{
offset = transform.position - player.transform.position;
}
private void Update()
{
transform.position = player.transform.position + offset;
}
}
이런식으로 코드를 작성하면 매끄럽게 따라가지 않고 화면이 흔들리는 듯한 현상이 발생할 수 있다.
이는 Update 간의 처리에 순서가 없기 때문인데, 예를 들자면 1 2 3 Update가 있을 때,
1부터 실행되는게 보장되지 않는 것이다.
이럴 때 사용하는게 LateUpdate라고 한다.
카메라워크에 잘 사용된다고 하니 기억해두자.
(요즘 버전에서는 Update로 해도 문제가 발생하지 않는 것 처럼 보이지만 확실한건 LateUpdate를 쓰는 것이라고 했다.)