<!--
{
  "documentType" : "article",
  "framework" : "RealityKit",
  "identifier" : "/documentation/RealityKit/improving-the-accessibility-of-realitykit-apps",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Improving the Accessibility of RealityKit Apps"
}
-->

# Improving the Accessibility of RealityKit Apps

Incorporate assistive technologies in your augmented reality app.

## Overview

To support assistive technologies such as VoiceOver in your RealityKit apps, set
the properties on each visible [`Entity`](/documentation/RealityKit/Entity) in your scene. You can configure
accessibility in Reality Composer, and in code.

> Note: To see an example of accessibility support in a RealityKit app, check out
> the <doc:<doc://com.apple.RealityKit/documentation/RealityKit/configuring-collision-in-realitykit>>
> sample code project.

### Configure accessibility in Reality Composer

When you create a scene in Reality Composer, you can configure the accessibility
properties of your entities right in the properties inspector. Select one or more
entities in your scene and click the Accessibility Enabled checkbox in the properties
inspector. In the Label field, give the entity a name to be used by assistive technologies.
In the Detailed Description field, you can optionally add a more in-depth description.

![The accessibility portion of Reality Composer’s property inspector, showing the Accessibility Enabled checkbox checked, with two additional fields for providing accessibility information about the selected entity.](images/com.apple.RealityKit/improving-the-accessibility-of-realitykit-apps-1@2x.png)

### Configure accessibility in code

You can also configure entities to work with assistive technologies in code. To enable
accessibility support for an [`Entity`](/documentation/RealityKit/Entity), set its  [`isAccessibilityElement`](/documentation/RealityKit/Entity/isAccessibilityElement)
property to `True` and provide a short descriptive name using [`accessibilityLabel`](/documentation/RealityKit/Entity/accessibilityLabel).
If you want to provide a more detailed description, set [`accessibilityDescription`](/documentation/RealityKit/Entity/accessibilityDescription).

Because these properties were introduced in iOS 14, any code that sets or reads their
values should be wrapped in an availability macro if your project’s deployment target
is iOS 13. Setting these values on an older version of iOS results in a runtime exception.

```swift
if #available(iOS 14.0, *) {
    ball.isAccessibilityElement = true
    ball.accessibilityLabel = "a bowling ball"
    ball.accessibilityDescription = "Tap and drag to roll the ball towards the pins."
}
```

## See Also

[Configuring Collision in RealityKit](/documentation/RealityKit/configuring-collision-in-realitykit)

Use collision groups and collision filters to control which objects collide.



---

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)