Для того чтобы в Unity 3D «Character Controller» поворачивался вместе с камерой (FPS_Player), вам нужно будет следовать нескольким шагам.
1. Создайте новый скрипт и прикрепите его к объекту, на котором находится "Character Controller".
2. В скрипте объявите переменные, которые будут хранить ссылку на компонент "Character Controller" и "Transform" камеры. Например:
c#
private CharacterController characterController;
private Transform cameraTransform;
<pre>{{EJS0}}</pre>
4. В методе Update() используйте поворот камеры для поворота "Character Controller". Для этого используйте методы Rotate() или LookAt(). Например:
#
void Update()
{
float mouseX = Input.GetAxis("Mouse X") * sensitivity * Time.deltaTime;
float mouseY = Input.GetAxis("Mouse Y") * sensitivity * Time.deltaTime;
// Поворот камеры
cameraTransform.Rotate(-mouseY, 0, 0);
// Поворот «Character Controller» по горизонтали
transform.Rotate(0, mouseX, 0);
}
`
5. Учитывайте, что углы поворота камеры могут быть ограничены. В таком случае, вам нужно будет добавить дополнительную логику для ограничения углов поворота.
6. Обратите внимание, что это простой пример и может потребоваться дополнительная работа для получения желаемого эффекта, такого как инверсия управления камерой или плавное перемещение. Подгоняйте этот код под свои потребности и требования вашего проекта.
Вот и все! Теперь ваш "Character Controller" будет поворачиваться вместе с камерой.