<!--
{
  "availability" : [
    "iOS: 27.0.0 -",
    "iPadOS: 27.0.0 -",
    "tvOS: 27.0.0 -",
    "visionOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "RealityKit",
  "identifier" : "/documentation/RealityKit/LowLevelRenderContextStandalone",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "RealityKit"
    ],
    "preciseIdentifier" : "s:19RealityCoreRenderer31LowLevelRenderContextStandaloneC"
  },
  "title" : "LowLevelRenderContextStandalone"
}
-->

# LowLevelRenderContextStandalone

A standalone Metal-backed render context for creating low-level rendering resources.

```
final class LowLevelRenderContextStandalone
```

## Overview

`LowLevelRenderContextStandalone` is a concrete implementation of [`LowLevelRenderContext`](/documentation/RealityKit/LowLevelRenderContext),
[`LowLevelRenderContextLighting`](/documentation/RealityKit/LowLevelRenderContextLighting), and [`LowLevelRenderContextShaderGraph`](/documentation/RealityKit/LowLevelRenderContextShaderGraph). Create one using
[`init(configuration:)`](/documentation/RealityKit/LowLevelRenderContextStandalone/init(configuration:)) , or
[`init(configuration:resources:)`](/documentation/RealityKit/LowLevelRenderContextStandalone/init(configuration:resources:)) with a prepared [`LowLevelRenderContextStandalone.Resources`](/documentation/RealityKit/LowLevelRenderContextStandalone/Resources) instance.

## Topics

### Creating a render context

[`init(configuration: LowLevelRenderContextStandalone.Configuration, resources: LowLevelRenderContextStandalone.Resources) throws`](/documentation/RealityKit/LowLevelRenderContextStandalone/init(configuration:resources:))

Creates a standalone render context using resources prepared ahead of time.

[`init(configuration: LowLevelRenderContextStandalone.Configuration) async throws`](/documentation/RealityKit/LowLevelRenderContextStandalone/init(configuration:))

Creates a standalone render context, asynchronously preparing required resources.

[`struct Configuration`](/documentation/RealityKit/LowLevelRenderContextStandalone/Configuration)

Configuration for creating a standalone render context backed by a Metal device.

[`struct Resources`](/documentation/RealityKit/LowLevelRenderContextStandalone/Resources)

Resources needed for a render context

### Creating lighting functions

[`func makeImageBasedLightingFunction() -> sending LowLevelMaterialResource.LightingFunction`](/documentation/RealityKit/LowLevelRenderContextStandalone/makeImageBasedLightingFunction())

Returns a lighting function using image-based lighting (IBL).

[`func makeUnlitLightingFunction() -> sending LowLevelMaterialResource.LightingFunction`](/documentation/RealityKit/LowLevelRenderContextStandalone/makeUnlitLightingFunction())

Returns an unlit lighting function that emits the surface emissive color directly,
without any lighting calculations.

### Default Implementations

[LowLevelRenderContext Implementations](/documentation/RealityKit/LowLevelRenderContextStandalone/LowLevelRenderContext-Implementations)

[LowLevelRenderContextLighting Implementations](/documentation/RealityKit/LowLevelRenderContextStandalone/LowLevelRenderContextLighting-Implementations)

[LowLevelRenderContextShaderGraph Implementations](/documentation/RealityKit/LowLevelRenderContextStandalone/LowLevelRenderContextShaderGraph-Implementations)

## Relationships

### Conforms To

[`LowLevelRenderContextShaderGraph`](/documentation/RealityKit/LowLevelRenderContextShaderGraph)

[`LowLevelRenderContext`](/documentation/RealityKit/LowLevelRenderContext)

[`Escapable`](/documentation/Swift/Escapable)

[`LowLevelRenderContextLighting`](/documentation/RealityKit/LowLevelRenderContextLighting)

[`Copyable`](/documentation/Swift/Copyable)

---

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)