Framework

RealityKit

Simulate and render 3D content for use in your augmented reality apps.

Overview

Use the RealityKit framework to implement high-performance 3D simulation and rendering. RealityKit leverages information provided by the ARKit framework to seamlessly integrate virtual objects into the real world.

Use RealityKit’s rich functionality to create compelling augmented reality (AR) experiences.

  • Import fully formed assets, including sophisticated compositions that you make with the Reality Composer app, or build them from meshes, materials, and textures.

  • Place audio sources in the environment.

  • Animate objects, both manually and with physics simulations.

  • Respond to user input and changes in the environment.

  • Synchronize across devices, enabling group AR experiences.

Topics

Essentials

class ARView

A view that enables you to display an AR experience with RealityKit.

Reality Composer

Creating 3D Content with Reality Composer

Assemble assets into a dynamic 3D composition that you can add to a scene in your app, or share with AR Quick Look.

Creating a Game with Reality Composer

Design your app’s visual look and behaviors in Reality Composer, and complete the gameplay experience by using custom RealityKit code.

The Entity Component System

class Scene

A container that holds the collection of entities rendered by an AR view.

class Entity

An element of a RealityKit scene to which you attach components that provide appearance and behavior characteristics for the entity.

protocol Component

A representation of a geometry or a behavior that you apply to an entity.

protocol Resource

A shared resource you use to configure a component, like a material, mesh, or texture.

Scene Elements

class AnchorEntity

An anchor that tethers virtual content to a real-world object in an AR session.

class ModelEntity

A representation of a physical object that RealityKit renders and optionally simulates.

class TriggerVolume

An invisible 3D shape that detects when objects enter or exit a given region of space.

class BodyTrackedEntity

An entity used to animate a virtual character in an AR scene by tracking a real person.

Cameras and Lighting

class PerspectiveCamera

A virtual camera that establishes the rendering perspective.

class PointLight

An entity that produces an omnidirectional light for virtual objects.

class DirectionalLight

An entity that casts a virtual light in a particular direction.

class SpotLight

An entity that illuminates virtual content in a cone-shaped volume.

Animation Playback

class AnimationPlaybackController

A controller that manages animation playback.

class AnimationResource

An animation that can be played by an entity.

struct AnimationTimingFunction

The pacing of an animation transition.

enum AnimationEvents

Events triggered by the RealityKit animation system.

Audio Playback

class AudioPlaybackController

A controller that manages audio playback of a resource.

class AudioResource

An audio resource that can be played by an entity.

class AudioFileResource

An audio resource that you load from a file or from a URL.

enum AudioEvents

Events associated with audio playback.

Network Synchronization

class MultipeerConnectivityService

A service that provides scene synchronization among all peers in a multipeer connectivity session.

protocol SynchronizationService

An interface that enables entity synchronization among a group of local peers.

enum SynchronizationEvents

Events associated with network synchronization of scene information.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software