<!--
{
  "documentType" : "article",
  "framework" : "SceneKit",
  "identifier" : "/documentation/SceneKit/physics-simulation",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Physics Simulation"
}
-->

# Physics Simulation

Add dynamic behaviors to scene elements; detect contacts and collisions; simulate realistic effects like gravity, springs, and vehicles.

## Topics

### Physics Bodies

[`SCNPhysicsBody`](/documentation/SceneKit/SCNPhysicsBody)

The physics simulation attributes attached to a scene graph node.

[`SCNPhysicsShape`](/documentation/SceneKit/SCNPhysicsShape)

An abstraction of a physics body’s solid volume for tuning collision detection.

### Collision and Contact Detection

[`SCNPhysicsContactDelegate`](/documentation/SceneKit/SCNPhysicsContactDelegate)

Methods you can implement to respond when a contact or collision occurs between two physics bodies in a scene.

[`SCNPhysicsContact`](/documentation/SceneKit/SCNPhysicsContact)

Detailed information about a contact between two physics bodies in a scene’s physics simulation.

### Physics in a Scene

[`SCNPhysicsWorld`](/documentation/SceneKit/SCNPhysicsWorld)

The global simulation of collisions, gravity, joints, and other physics effects in a scene.

[`SCNPhysicsField`](/documentation/SceneKit/SCNPhysicsField)

An object that applies forces, such as gravitation, electromagnetism, and turbulence, to physics bodies within a certain area of effect.

[`SCNPhysicsBehavior`](/documentation/SceneKit/SCNPhysicsBehavior)

The abstract superclass for joints, vehicle simulations, and other high-level behaviors that incorporate multiple physics bodies.

### Joints

[`SCNPhysicsHingeJoint`](/documentation/SceneKit/SCNPhysicsHingeJoint)

A physics behavior that connects two bodies and allows them to pivot around each other on a single axis.

[`SCNPhysicsSliderJoint`](/documentation/SceneKit/SCNPhysicsSliderJoint)

A physics behavior that connects two bodies and allows them to slide against each other and rotate around their connecting points.

[`SCNPhysicsBallSocketJoint`](/documentation/SceneKit/SCNPhysicsBallSocketJoint)

A physics behavior that connects two physics bodies and allows them to pivot around each other in any direction.

[`SCNPhysicsConeTwistJoint`](/documentation/SceneKit/SCNPhysicsConeTwistJoint)

### Vehicle Simulation

[`SCNPhysicsVehicle`](/documentation/SceneKit/SCNPhysicsVehicle)

A physics behavior that modifies a physics body to behave like a car, motorcycle, or other wheeled vehicle.

[`SCNPhysicsVehicleWheel`](/documentation/SceneKit/SCNPhysicsVehicleWheel)

The appearance and physical characteristics of an individual wheel associated with an physics vehicle behavior.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)