using UnityEngine; public class WheelVisualizer : MonoBehaviour { private Rigidbody rig; public float spinAmount; public float inputVelocityAmount; public float inputReturnVelocityAmount; public float inputFriction; private GenericInputHandler input; private float inputVelocity; private void Start() { rig = GetComponentInParent(); input = GetComponentInParent(); } private void FixedUpdate() { inputVelocity *= inputFriction; } private void Update() { inputVelocity += input.inputDirection.x; inputVelocity -= inputVelocity * inputReturnVelocityAmount * Time.deltaTime; base.transform.localRotation = Quaternion.Euler(0f, inputVelocity * inputVelocityAmount, 0f); base.transform.GetChild(0).Rotate(Vector3.right * spinAmount * Time.deltaTime * rig.transform.InverseTransformDirection(rig.velocity).z, Space.Self); } }