first commit
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class CameraFollow : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Transform target;
|
||||
[SerializeField] private Vector3 offset = new Vector3(0f, 18f, -10f);
|
||||
[SerializeField] private Vector3 rotationEuler = new Vector3(65f, 0f, 0f);
|
||||
[SerializeField] private float smoothSpeed = 8f;
|
||||
[SerializeField] private float rotationSmoothSpeed = 10f;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
// Upgrade the old chase-camera setup to the new top-down view for existing scenes.
|
||||
if (offset == new Vector3(0f, 6f, -8f))
|
||||
{
|
||||
offset = new Vector3(0f, 18f, -10f);
|
||||
}
|
||||
}
|
||||
|
||||
private void LateUpdate()
|
||||
{
|
||||
if (target == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Vector3 desiredPosition = target.position + offset;
|
||||
transform.position = Vector3.Lerp(transform.position, desiredPosition, smoothSpeed * Time.deltaTime);
|
||||
Quaternion desiredRotation = Quaternion.Euler(rotationEuler);
|
||||
transform.rotation = Quaternion.Slerp(transform.rotation, desiredRotation, rotationSmoothSpeed * Time.deltaTime);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user