---
title: SCNPhysicsVehicle
framework: scenekit
role: symbol
role_heading: Class
path: scenekit/scnphysicsvehicle
---

# SCNPhysicsVehicle

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

## Declaration

```swift
class SCNPhysicsVehicle
```

## Overview

Overview To build a vehicle, designate an SCNPhysicsBody object as its chassis and an array of SCNPhysicsVehicleWheel objects as its wheels. For each wheel, you define physical characteristics such as suspension and traction, and associate a node in your scene to provide the wheel’s size and visual representation. After you construct a vehicle, you can control it in terms of acceleration, braking, and steering. Although it’s also possible to use a set of physics bodies and joints to collectively simulate a wheeled vehicle, the SCNPhysicsVehicle class implements a higher-level simulation that provides realistic vehicle behavior with more efficient simulation performance.

## Topics

### Creating a Vehicle

- [init(chassisBody:wheels:)](scenekit/scnphysicsvehicle/init(chassisbody:wheels:).md)

### Working with a Vehicle’s Physical Characteristics

- [chassisBody](scenekit/scnphysicsvehicle/chassisbody.md)
- [wheels](scenekit/scnphysicsvehicle/wheels.md)

### Driving a Vehicle

- [applyEngineForce(_:forWheelAt:)](scenekit/scnphysicsvehicle/applyengineforce(_:forwheelat:).md)
- [applyBrakingForce(_:forWheelAt:)](scenekit/scnphysicsvehicle/applybrakingforce(_:forwheelat:).md)
- [setSteeringAngle(_:forWheelAt:)](scenekit/scnphysicsvehicle/setsteeringangle(_:forwheelat:).md)
- [speedInKilometersPerHour](scenekit/scnphysicsvehicle/speedinkilometersperhour.md)

## Relationships

### Inherits From

- [SCNPhysicsBehavior](scenekit/scnphysicsbehavior.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

### Vehicle Simulation

- [SCNPhysicsVehicleWheel](scenekit/scnphysicsvehiclewheel.md)
