В общем сделал всё как по этому уроку:
https://www.youtube.com/watch?v=537B1kJp9YQ, но мой скрипт камеры не работает.
Код:
public Vector2 _look;
public float rotationPower = 3f;
public GameObject target;
private void Update()
{
target.transform.rotation *= Quaternion.AngleAxis(_look.x * rotationPower, Vector3.up);
target.transform.rotation *= Quaternion.AngleAxis(_look.y * rotationPower, Vector3.right);
var angles = target.transform.localEulerAngles;
angles.z = 0;
var angle = target.transform.localEulerAngles.x;
if (angle > 180 && angle < 340)
{
angles.x = 340;
}
else if(angle < 180 && angle > 40)
{
angles.x = 40;
}
target.transform.localEulerAngles = angles;
transform.rotation = Quaternion.Euler(0, target.transform.rotation.eulerAngles.y, 0);
target.transform.localEulerAngles = new Vector3(angles.x, 0, 0);
}