напиши скрипт поворота камеры от 1 лица на c#
csharp
using UnityEngine;
public class CameraController : MonoBehaviour
{
public float mouseSensitivity = 100f; // Чувствительность мыши
public Transform playerBody; // Ссылка на игровой объект, представляющий игрока
private float xRotation = 0f; // Поворот камеры по оси X
void Start()
{
Cursor.lockState = CursorLockMode.Locked; // Захватываем курсор в центре экрана
}
void Update()
{
float mouseX = Input.GetAxis("Mouse X") * mouseSensitivity * Time.deltaTime;
float mouseY = Input.GetAxis("Mouse Y") * mouseSensitivity * Time.deltaTime;
xRotation -= mouseY;
xRotation = Mathf.Clamp(xRotation, -90f, 90f); // Ограничиваем поворот камеры по вертикали
transform.localRotation = Quaternion.Euler(xRotation, 0f, 0f); // Поворачиваем камеру
playerBody.Rotate(Vector3.up * mouseX);
}
}
В этом скрипте используется метод `Update()`, который вызывается каждый кадр. Внутри этого метода мы получаем текущие значения движения мыши с помощью метода `Input.GetAxis()`, умножаем их на чувствительность мыши и масштабируем на время, прошедшее с момента последнего кадра (чтобы скрипт был независим от фреймрейта).
Полученные значения мыши используются для определения угла поворота камеры вокруг оси X и оси Y. Важно отметить, что мы ограничиваем угол поворота вверх и вниз, чтобы игрок не мог "перекрутить" голову.
Затем мы используем полученные значения для поворота камеры с помощью метода `Quaternion.Euler()`, который принимает углы поворота в формате Эйлера.
Наконец, мы используем метод `Rotate()` на игровом объекте, представляющем игрока, чтобы повернуть его вокруг вертикальной оси (ось Y), чтобы игрок мог смотреть в разные стороны, когда камера поворачивается.
Чтобы применить этот скрипт к камере, необходимо создать пустой игровой объект и прикрепить к нему компонент "Camera". Затем просто перетащите этот скрипт "CameraController" на созданную камеру.
Теперь, при запуске игры, камера будет реагировать на движение мыши игрока, позволяя ему осуществлять поворот от первого лица.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет