---
title: SCNPhysicsBehavior
framework: scenekit
role: symbol
role_heading: Class
path: scenekit/scnphysicsbehavior
---

# SCNPhysicsBehavior

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

## Declaration

```swift
class SCNPhysicsBehavior
```

## Overview

Overview An SCNPhysicsBehavior object defines a high-level behavior for one or more physics bodies, modifying the results of the physics simulation. Behaviors include joints that connect multiple bodies so they move together and vehicle definitions that cause a body to roll like a car. You never use this class directly; instead, you instantiate one of the subclasses that defines the kind of behavior you want to add to your physics world. describes the kinds of behaviors you can create in SceneKit.  |   |   |   |   |  To use a physics behavior, you follow these steps: Create SCNPhysicsBody objects and attach them to each node that participates in the behavior. Create and configure a behavior object using one of the subclasses listed in Table 1. Add the behavior to the physics simulation by calling the addBehavior(_:) method on your scene’s SCNPhysicsWorld object.

## Topics

### Initializers

- [init(coder:)](scenekit/scnphysicsbehavior/init(coder:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Inherited By

- [SCNPhysicsBallSocketJoint](scenekit/scnphysicsballsocketjoint.md)
- [SCNPhysicsConeTwistJoint](scenekit/scnphysicsconetwistjoint.md)
- [SCNPhysicsHingeJoint](scenekit/scnphysicshingejoint.md)
- [SCNPhysicsSliderJoint](scenekit/scnphysicssliderjoint.md)
- [SCNPhysicsVehicle](scenekit/scnphysicsvehicle.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)

## See Also

### Physics in a Scene

- [SCNPhysicsWorld](scenekit/scnphysicsworld.md)
- [SCNPhysicsField](scenekit/scnphysicsfield.md)
