Version: 2018.1 (switch to 2018.2b or 2017.4)
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.


Suggest a change


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.


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.




The Physics module implements 3D physics in Unity.


BoxColliderA box-shaped primitive collider.
CapsuleColliderA capsule-shaped primitive collider.
CharacterControllerA CharacterController allows you to easily do movement constrained by collisions without having to deal with a rigidbody.
CharacterJointCharacter Joints are mainly used for Ragdoll effects.
ColliderA base class of all colliders.
CollisionDescribes a collision.
ConfigurableJointThe configurable joint is an extremely flexible joint giving you complete control over rotation and linear motion.
ConstantForceA force applied constantly.
ControllerColliderHitControllerColliderHit is used by CharacterController.OnControllerColliderHit to give detailed information about the collision and how to deal with it.
FixedJointThe Fixed joint groups together 2 rigidbodies, making them stick together in their bound position.
HingeJointThe HingeJoint groups together 2 rigid bodies, constraining them to move like connected by a hinge.
JointJoint is the base class for all joints.
MeshColliderA mesh collider allows you to do collision detection between meshes and primitives.
PhysicMaterialPhysics material describes how to handle colliding objects (friction, bounciness).
PhysicsGlobal physics properties and helper methods.
RigidbodyControl of an object's position through physics simulation.
SphereColliderA sphere-shaped primitive collider.
SpringJointThe spring joint ties together 2 rigid bodies, spring forces will be automatically applied to keep the object at the given distance.


ContactPointDescribes a contact point where the collision occurs.
JointDriveHow the joint's movement will behave along its local X axis.
JointLimitsJointLimits is used by the HingeJoint to limit the joints angle.
JointMotorThe JointMotor is used to motorize a joint.
JointSpringJointSpring is used add a spring force to HingeJoint and PhysicMaterial.
RaycastCommandStruct used to set up a raycast command to be performed asynchronously during a job.
RaycastHitStructure used to get information back from a raycast.
SoftJointLimitThe limits defined by the CharacterJoint.
SoftJointLimitSpringThe configuration of the spring attached to the joint's limits: linear and angular. Used by CharacterJoint and ConfigurableJoint.
WheelFrictionCurveWheelFrictionCurve is used by the WheelCollider to describe friction properties of the wheel tire.


CollisionDetectionModeThe collision detection mode constants used for Rigidbody.collisionDetectionMode.
CollisionFlagsCollisionFlags is a bitmask returned by CharacterController.Move.
ConfigurableJointMotionConstrains movement for a ConfigurableJoint along the 6 axes.
ForceModeUse ForceMode to specify how to apply a force using Rigidbody.AddForce.
JointProjectionModeDetermines how to snap physics joints back to its constrained position when it drifts off too much.
MeshColliderCookingOptionsCooking options that are available with MeshCollider.
PhysicMaterialCombineDescribes how physics materials of the colliding objects are combined.The friction force as well as the residual bounce impulse are applied symmertrically to both of the colliders in contact, so each pair of overlapping colliders must have a single set of friction and bouciness settings. However, one can set arbitrary physics materials to any colliders. For that particular reason, there is a mechanism that allows the combination of two different sets of properties that correspond to each of the colliders in contact into one set to be used in the solver.Specifying Average, Maximum, Minimum or Multiply as the physics material combine mode, you directly set the function that is used to combine the settings corresponding to the two overlapping colliders into one set of settings that can be used to apply the material effect.Note that there is a special case when the two overlapping colliders have physics materials with different combine modes set. In this particular case, the function that has the highest priority is used. The priority order is as follows: Average < Minimum < Multiply < Maximum. For example, if one material has Average set but the other one has Maximum, then the combine function to be used is Maximum, since it has higher priority.
QueryTriggerInteractionOverrides the global Physics.queriesHitTriggers.
RigidbodyConstraintsUse these flags to constrain motion of Rigidbodies.
RigidbodyInterpolation Rigidbody interpolation mode.
RotationDriveModeControl ConfigurableJoint's rotation with either X & YZ or Slerp Drive.

Did you find this page useful? Please give it a rating: