---
title: "init(configuration:)"
framework: realitykit
role: symbol
role_heading: Initializer
path: "realitykit/lowlevelrendercontextstandalone/init(configuration:)"
---

# init(configuration:)

Creates a standalone render context, asynchronously compiling all required shader and pipeline resources.

## Declaration

```swift
nonisolated(nonsending) init(configuration: LowLevelRenderContextStandalone.Configuration) async throws
```

## Parameters

- `configuration`: The Metal device and optional memory owner for the new context.

## Discussion

Discussion Prefer this overload when creating a single render context. If you need to share compiled resources across multiple contexts, create a LowLevelRenderContextStandalone.Resources value first and use init(configuration:resources:) instead. note: An error if shader compilation or context creation fails.

## See Also

### Creating a render context

- [init(configuration:resources:)](realitykit/lowlevelrendercontextstandalone/init(configuration:resources:).md)
- [LowLevelRenderContextStandalone.Configuration](realitykit/lowlevelrendercontextstandalone/configuration.md)
- [LowLevelRenderContextStandalone.Resources](realitykit/lowlevelrendercontextstandalone/resources.md)
