using UnityEngine; // Замена для CameraFollow3D. // Камера НЕ вращается и НЕ наклоняется — только плавно следует за игроком. // Это критично для изометрии: "объём" уже нарисован в спрайтах, // камера должна смотреть на сцену строго прямо, без LookAt и без наклона. public class CameraFollowIso : MonoBehaviour { public Transform player; // Смещение камеры от игрока. Z должен оставаться отрицательным // (камера "позади" сцены по оси Z), X и Y обычно 0, если камера // должна быть строго над игроком. public Vector3 offset = new Vector3(0, 0, -10); // Чем меньше — тем плавнее (и тем сильнее лаг за игроком). // 5-10 обычно комфортно и без резких рывков. public float smoothSpeed = 8f; void Awake() { // Жёстко фиксируем поворот камеры один раз. // Никакого LookAt в Update/LateUpdate быть не должно. transform.rotation = Quaternion.identity; } void LateUpdate() { if (player == null) return; Vector3 targetPos = player.position + offset; // Плавное движение ТОЛЬКО позиции, поворот не трогаем вообще. transform.position = Vector3.Lerp(transform.position, targetPos, smoothSpeed * Time.deltaTime); } }