24/05/13
메인카메라가 캐릭터를 따라 이동하면 되니까 카메라 오브젝트를 수정하다가 자꾸 실패해서 찾아보게 되었다.
찾아보니 카메라 이동 스크립트를 짜서 플레이어 컴포넌트로 넣어주면 해결된다고 한다.
아래는 카메라가 플레이어를 따라 추적하게 만드는 스크립트이다.
public class CameraFollow : MonoBehaviour
{
[SerializeField]private GameObject Player;
private Transform mainCamera;
private void Start()
{
mainCamera = Camera.main.transform;
}
private void LateUpdate()
{
if (Player != null && mainCamera != null)
{
Vector3 newPosition = new Vector3(Player.transform.position.x, Player.transform.position.y, mainCamera.position.z);
mainCamera.position = newPosition;
}
}
}
당연히 카메라 오브젝트를 수정해서 움직이게 만들어야 한다고 생각했는데...
단순하게 주체가 플레이어니까 플레이어의 움직임에 따라 변하는 벡터값을 메인카메라 transform변수에 position값으로 넣어주니
쉽게 해결되었다 하지만 이렇게라면 반대로 카메라 오브젝트에 움직임 스크립트를 컴포넌트로 추가해서 해결도 가능할 것 같은데 접근 방식의 차이인것 같다.