<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macCatalyst: 15.0.0 -",
    "macOS: 12.0.0 -",
    "tvOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "RealityKit",
  "identifier" : "/documentation/RealityKit/ARView/RenderCallbacks-swift.struct",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "RealityKit"
    ],
    "preciseIdentifier" : "s:10RealityKit6ARViewC15RenderCallbacksV"
  },
  "title" : "ARView.RenderCallbacks"
}
-->

# ARView.RenderCallbacks

A container that holds the view’s render callbacks.

```
struct RenderCallbacks
```

## Overview

Render callbacks are closures RealityKit calls at predefined times. You can use render callbacks
to modify the results of RealityKit’s rendering. If you assign a function or closure to any of the
contained callback properties, RealityKit calls that function or closure at a predefined time. Setting
the [`postProcess`](/documentation/RealityKit/ARView/RenderCallbacks-swift.struct/postProcess) property, for example,
causes RealityKit to call the assigned function or closure every frame, after RealityKit renders the
scene, but before it displays it.

## Topics

### Creating a callback object

[`init()`](/documentation/RealityKit/ARView/RenderCallbacks-swift.struct/init())

Creates a new object.

### Register callback closures

[`var prepareWithDevice: ((any MTLDevice) -> Void)?`](/documentation/RealityKit/ARView/RenderCallbacks-swift.struct/prepareWithDevice)

A callback function for doing initial setup work.

[`var postProcess: ((ARView.PostProcessContext) -> Void)?`](/documentation/RealityKit/ARView/RenderCallbacks-swift.struct/postProcess)

A callback function for implementing postprocess effects.



---

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)