Я думаю, это из-за умножения Time.deltatime, но когда я этого не делаю, Если умножить значения на дельта-время, я получу более медленное вращение с контроллером в сборке (хотя значение _rotationVelocity одинаковое и в сборке, и в редакторе).
Знаете ли вы, если я должно умножаться на deltatime или нет? а если нет, то почему вращение не одинаково при вводе данных как с помощью джойстика, так и с помощью мыши? Спасибо
Вот код:
private void HandleRotation()
{
float scalingFactor = Time.deltaTime;
Vector2 mouseDelta = inputManager.inputActions.Player.CameraRotation.ReadValue();
_cinemachineTargetPitch += -mouseDelta.y * cameraSensitivity * scalingFactor;
_rotationVelocity = mouseDelta.x * cameraSensitivity * scalingFactor;
// clamp our pitch rotation
_cinemachineTargetPitch = ClampAngle(_cinemachineTargetPitch, -maxXRotation, maxXRotation);
// Update Cinemachine camera target pitch
cameraTransform.localRotation = Quaternion.Euler(_cinemachineTargetPitch, 0f, 0f);
// rotate the player left and right
playerTransform.Rotate(Vector3.up * _rotationVelocity);
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... r-in-unity
Мобильная версия