<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -",
    "macCatalyst: 14.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "RealityKit",
  "identifier" : "/documentation/RealityKit/ARView/session",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "RealityKit"
    ],
    "preciseIdentifier" : "c:@CM@RealityKit@objc(cs)ARView(py)session"
  },
  "title" : "session"
}
-->

# session

The AR session that supports the view’s rendering.

```
@MainActor @preconcurrency dynamic var session: ARSession { get set }
```

## Discussion

RealityKit automatically creates a default session that the view manages. If you have an existing or
custom session, setting it as the view’s session replaces the default session. If you replace the
default session, you need to start it by calling
<doc://com.apple.documentation/documentation/ARKit/ARSession/run(_:options:)>.
See [`automaticallyConfigureSession`](/documentation/RealityKit/ARView/automaticallyConfigureSession) for more details.

When [`automaticallyConfigureSession`](/documentation/RealityKit/ARView/automaticallyConfigureSession) is
<doc://com.apple.documentation/documentation/Swift/true>, the default
value is an
<doc://com.apple.documentation/documentation/ARKit/ARWorldTrackingConfiguration>.

---

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)