Legacy Documentation: Version 2018.2 (Go to current version)
LanguageEnglish
• C#

# WheelCollider

class in UnityEngine

/

Inherits from:Collider

/

Implemented in:UnityEngine.VehiclesModule

Suggest a change

## Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

## Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Switch to Manual

## Description

A special collider for vehicle wheels.

Wheel collider is used to model vehicle wheels. It simulates a spring and damper suspension setup, and uses a slip based tire friction model to calculate wheel contact forces.

Wheel's collision detection is performed by casting a ray from center downwards the local y-axis. The wheel has a radius and can extend downwards by suspensionDistance amount.

The wheel is controlled with motorTorque, brakeTorque and steerAngle properties.

Wheel collider computes friction separately from the rest of physics engine, using a slip based friction model. This allows for more realistic behaviour, but makes wheel colliders ignore standard PhysicMaterial settings. Simulation of different road materials is done by changing the forwardFriction and sidewaysFriction based on what material the wheel is hitting. See Also: GetGroundHit and WheelFrictionCurve.

## Properties

 brakeTorque Brake torque expressed in Newton metres. center The center of the wheel, measured in the object's local space. forceAppPointDistance Application point of the suspension and tire forces measured from the base of the resting wheel. forwardFriction Properties of tire friction in the direction the wheel is pointing in. isGrounded Indicates whether the wheel currently collides with something (Read Only). mass The mass of the wheel, expressed in kilograms. Must be larger than zero. Typical values would be in range (20,80). motorTorque Motor torque on the wheel axle expressed in Newton metres. Positive or negative depending on direction. radius The radius of the wheel, measured in local space. rpm Current wheel axle rotation speed, in rotations per minute (Read Only). sidewaysFriction Properties of tire friction in the sideways direction. sprungMass The mass supported by this WheelCollider. steerAngle Steering angle in degrees, always around the local y-axis. suspensionDistance Maximum extension distance of wheel suspension, measured in local space. suspensionSpring The parameters of wheel's suspension. The suspension attempts to reach a target position by applying a linear force and a damping force. wheelDampingRate The damping rate of the wheel. Must be larger than zero.

## Public Methods

 ConfigureVehicleSubsteps Configure vehicle sub-stepping parameters. GetGroundHit Gets ground collision data for the wheel. GetWorldPose Gets the world space pose of the wheel accounting for ground contact, suspension limits, steer angle, and rotation angle (angles in degrees).

## Properties

 attachedRigidbody The rigidbody the collider is attached to. bounds The world space bounding volume of the collider (Read Only). contactOffset Contact offset value of this collider. enabled Enabled Colliders will collide with other Colliders, disabled Colliders won't. isTrigger Is the collider a trigger? material The material used by the collider. sharedMaterial The shared physic material of this collider. gameObject The game object this component is attached to. A component is always attached to a game object. tag The tag of this game object. transform The Transform attached to this GameObject. hideFlags Should the object be hidden, saved with the Scene or modifiable by the user? name The name of the object.

## Public Methods

 ClosestPoint Returns a point on the collider that is closest to a given location. ClosestPointOnBounds The closest point to the bounding box of the attached collider. Raycast Casts a Ray that ignores all Colliders except this one. BroadcastMessage Calls the method named methodName on every MonoBehaviour in this game object or any of its children. CompareTag Is this game object tagged with tag ? GetComponent Returns the component of Type type if the game object has one attached, null if it doesn't. GetComponentInChildren Returns the component of Type type in the GameObject or any of its children using depth first search. GetComponentInParent Returns the component of Type type in the GameObject or any of its parents. GetComponents Returns all components of Type type in the GameObject. GetComponentsInChildren Returns all components of Type type in the GameObject or any of its children. GetComponentsInParent Returns all components of Type type in the GameObject or any of its parents. SendMessage Calls the method named methodName on every MonoBehaviour in this game object. SendMessageUpwards Calls the method named methodName on every MonoBehaviour in this game object and on every ancestor of the behaviour. GetInstanceID Returns the instance id of the object. ToString Returns the name of the GameObject.

## Static Methods

 Destroy Removes a gameobject, component or asset. DestroyImmediate Destroys the object obj immediately. You are strongly recommended to use Destroy instead. DontDestroyOnLoad Do not destroy the target Object when loading a new Scene. FindObjectOfType Returns the first active loaded object of Type type. FindObjectsOfType Returns a list of all active loaded objects of Type type. Instantiate Clones the object original and returns the clone.

## Operators

 bool Does the object exist? operator != Compares if two objects refer to a different object. operator == Compares two object references to see if they refer to the same object.

## Messages

 OnCollisionEnter OnCollisionEnter is called when this collider/rigidbody has begun touching another rigidbody/collider. OnCollisionExit OnCollisionExit is called when this collider/rigidbody has stopped touching another rigidbody/collider. OnCollisionStay OnCollisionStay is called once per frame for every collider/rigidbody that is touching rigidbody/collider. OnTriggerEnter OnTriggerEnter is called when the Collider other enters the trigger. OnTriggerExit OnTriggerExit is called when the Collider other has stopped touching the trigger. OnTriggerStay OnTriggerStay is called almost all the frames for every Collider other that is touching the trigger. The function is on the physics timer so it won't necessarily run every frame.