La malla de neumáticos gira más rápido que el rodillo de ruedas en Unity

Tengo un auto en Unity. Los guiones son C #. Me di count de que la rotation de mi malla de neumáticos es más rápida que la rotation de Whellcollider. Estoy usando este código para la rotation de las ruedas

flWheel.localEulerAngles = new Vector3(flWheel.localEulerAngles.x, flWheelCollider.steerAngle - flWheel.localEulerAngles.z, flWheel.localEulerAngles.z); frWheel.localEulerAngles = new Vector3(frWheel.localEulerAngles.x, frWheelCollider.steerAngle - frWheel.localEulerAngles.z, frWheel.localEulerAngles.z); flWheel.Rotate(flWheelCollider.rpm / 60 * 360 * Time.deltaTime, 0, 0); frWheel.Rotate(frWheelCollider.rpm / 60 * 360 * Time.deltaTime, 0, 0); rlWheel.Rotate(rlWheelCollider.rpm / 60 * 360 * Time.deltaTime, 0, 0); rrWheel.Rotate(rrWheelCollider.rpm / 60 * 360 * Time.deltaTime, 0, 0); 

Encontré esto de aquí

¿Alguien sabe cómo arreglar esto?

Editar:

Usando la respuesta de AquaGeneral, pude resolver el problema de rotation. Pero ahora la position delantera derecha del neumático cambió a la position trasera izquierda del neumático y la rueda trasera derecha giró 180 en el eje Y. necesitas ayuda

enter image description here

El código que encontraste no es la forma ideal de hacerlo. En lugar de averiguar exactamente qué es lo que está causando el problema para usted, simplemente use la function integrada : WheelCollider.GetWorldPose .

Del tutorial Unity Wheel Collider oficial en la function / método ApplyLocalPositionToVisuals :

 // Get the child of the wheel that has the mesh renderer Transform visualWheel = collider.transform.GetChild(0); Vector3 position; Quaternion rotation; collider.GetWorldPose(out position, out rotation); visualWheel.transform.position = position; visualWheel.transform.rotation = rotation;