Проблема с вращением Rigidbody
Добавлено: 24 дек 2020, 01:18
Всем привет! Я работаю над своим контроллером от первого лица, основанном на Rigidbody. Столкнулся с проблемой вращения, которую лучше всего продемонстрирует видео:
https://youtu.be/90UokE9j6TY
Как видно, персонаж дрожит при вращении мышью.
Иерархия у меня следующая: Main Camera - независимый объект, который следует объекту Camera Mount внутри моего персонажа.
Весь инпут я собираю в функции Update()
Персонажа двигаю и вращаю в FixedUpdate()
Камера двигается и вращается в LateUpdate()
Подскажите пожалуйста, каким образом мне вращать персонажа, чтобы он не дрожал?
https://youtu.be/90UokE9j6TY
Как видно, персонаж дрожит при вращении мышью.
Иерархия у меня следующая: Main Camera - независимый объект, который следует объекту Camera Mount внутри моего персонажа.
Весь инпут я собираю в функции Update()
Персонажа двигаю и вращаю в FixedUpdate()
Синтаксис:
Используется csharp
rigidbody.velocity = MoveDirection + (Vector3.up * m_velocity);
float yRot = playerCamera.transform.rotation.eulerAngles.y;
fps_Rigidbody.MoveRotation(Quaternion.Euler(0.0f, yRot, 0.0f));
float yRot = playerCamera.transform.rotation.eulerAngles.y;
fps_Rigidbody.MoveRotation(Quaternion.Euler(0.0f, yRot, 0.0f));
Камера двигается и вращается в LateUpdate()
Синтаксис:
Используется csharp
playerCamera.transform.position = cameraMount.position;
playerCamera.transform.rotation = Quaternion.Euler(x, y, 0);
playerCamera.transform.rotation = Quaternion.Euler(x, y, 0);
Подскажите пожалуйста, каким образом мне вращать персонажа, чтобы он не дрожал?