The XRAccessibility Project is an initiative driven by the XR Association and XR Access to provide a central place for developers to find solutions for creating accessible code across various XR platforms. We were inspired by developers, key players in ensuring that this technology is accessible, who reported challenges in finding accessible code snippets. It features:
-
Strategies, code, and tutorials to solve accessibility concerns across a wide range of platforms
-
An index that points to resources all over the internet, organized by platform
-
Validation of resource usability and functionality
-
A contribution form for adding additional resources to this project
Platform | Supported Devices |
---|---|
ARCore | Android |
ARKit | iOS |
LuminOS | Magic Leap One |
Unity | Many |
Unreal | Many |
WebXR | Web browsers |
Windows Mixed Reality | Microsoft HoloLens Microsoft HoloLens 2 Windows Mixed Reality headsets |
The XRAccessibility Project is open source. If you know of resources that other developers could benefit from, please share them!
To contribute to the XRAccessibility Project, fill out our resources submission form.
Submissions should preferably include a video demonstration and/or a text walk-through, so that potential users don't have to deploy a solution to understand what it does. Suggestions will be reviewed on the basis of clarity, functionality, and usefulness.
-
Clarity: is it clear what the resource does? Does it come with a demo or video?
-
Functionality: does the resource work? Is it regularly updated and maintained?
-
Usefulness: does the resource provide useful code snippets or otherwise help developers?
For other comments and suggestions, feel free to file an issue using Github.
If you’re new to XR and Accessibility, then check out these resources for concepts and ideas:
XRA’s Developers Guide, Chapter Three: Chapter Three is an update to XRA’s Developers Guide, a starter guide for developers designing reality-expanding experiences. This standalone update, “Accessibility & Inclusive Design in Immersive Experiences,” offers a set of industry-backed best practices for developing accessible platforms that enhance experiences for all users, not just those with disabilities.
PEAT - Inclusive XR in the Workforce: This resource will help anyone who wants to use immersive technologies in the workplace. Each section will help organizations to ensure the immersive technologies they adopt are accessible for all.
XR Access Resources: The XR Access Initiative, whose mission is to modernize, innovate, and expand XR technologies, products, content and assistive technologies by promoting inclusive design in a diverse community, has put together a list of resources representing a sample of other accessible XR projects, and resources to help ensure that XR is accessible to all.
A11yVR on YouTube: This channel is a compilation of videos presentations and recordings of meetups where people discuss accessibility in technology for people with disabilities that apply to XR/VR/AR.
-
XR Accessibility User Requirements - A list of user needs and requirements for people with disabilities using XR technology, published by the W3C.
-
Game Accessibility Guidelines - A reference for inclusive game design, flexible enough to accommodate XR applications.
-
Oculus - Designing Accessible VR Experiences - A set of guidelines for designing accessible VR experiences. Includes sections on UX and UI, controls, movement, display, app design, audio, and captions.
-
Magic Leap - Best Practices for Accessibility - A collection of best practices for designing accessible AR experiences. Includes sections on hearing, subtitles, visual, and mobility.
-
10 Usability Heuristics Applied to Virtual Reality - Jakob Nielsen's 10 usability herustics for interface design, as applied to virtual reality.
-
An IllegallySighted Look at VR Accessibility - A presentation on some of the challenges and possible solutions for low-vision VR circa 2017.
-
Barriers Browser - A report from the BBC focused on motor and cognitive barriers to using VR for people with disabilities.
-
SpoonieVR VR Accessibility Chart - A spreadsheet started by individuals with disabilities to track accessibilty for various games and applications on the market.
- ARCore home - An overview of ARCore, Google's development toolkit for Android.
-
ARKit home - An overview of ARKit, Apple's development toolkit for iOS.
-
Apple’s ARKit Documentation - Development details for ARKit.
-
Lumin OS Overview - An overview of Lumin OS, the operating developed by Magic Leap for their augmented reality devices.
-
MRTK 2.7 Integration Guide for Unity 2020.2.x/MLSDK 0.25.0 - Adds compatibility for the Magic Leap platform to the Mixed Reality Toolkit.
-
Unity home - An overview of Unity, one of the most popular 3D development platforms.
-
Unity Tutorials - Unity's suite of tutorials. Look for the "XR Development" category.
-
Unity Accessibility Plugin - A Unity plugin that brings screen reader functionality to Unity applications. Supports Android, iOS, Windows, Mac, and WebGL up to Unity 2020.1. Note: may require additional development to work with XR headsets.
-
Apple Unity Plug-Ins - Exposes a selection of Apple platform frameworks to Unity developers, including accessibility features like VoiceOver. See video here. Note: Unclear how much this interacts with ARKit.
-
SeeingVRtoolkit - A Unity project featuring a suite of low-vision tools, including magnification, contrast enhancement, remapping, text augmentation, text to speech, and more. Note: has not been updated since 2019.
-
Unity Documentation - Vision Utility - A Unity class containing methods to assist with accessibility for users with different vision capabilities. Currently includes one method: Get Color Blind Safe Palette.
-
Inclusive User Testing in VR - The winner of the 2022 MIT Reality Hack, this Unity plugin allows users to directly give feedback in VR and allows user researchers to view this feedback asynchronously using a web-based dashboard.
-
Unreal Engine home - An overview of Unreal Engine, Unity's main competitor and a powerful 3D development platform.
-
Unreal XR Development - A guide to setting up Unreal for XR development.
-
Introduction to Accessible Design with Unreal Engine - A tutorial course on how to develop accessible applications using Unreal.
-
Accessible Realities - A project by Zohar Gan to implement a number of accessible behaviors in XR using Unreal Engine.
-
WebXR home - An overview of WebXR, an API that enables web browsers access to input and output capabilities of XR devices.
-
Accessibility Considerations for the WebXR Device API - Accessibility considerations for WebXR, as released by the Immersive Web W3C group.
-
A-Frame - A web framework for building XR experiences using HTML. See also: City Builder, Leap Motion Hands, A-Frame GUI, A-Frame Super Hands, and A-Frame Motion Capture Components.
-
AccessibleLocomotionWebXR - An A-Frame component developed by Roland Dubois that enables quadriplegic users to navigate webvr spaces with binary input (sip-puff /assistive technology) for an augmented locomotion interface.
-
Aframe Meetup NYC - An archive of A-Frame prototypes from the NYC A-Frame Meetup.
-
Interacting with Objects in an Inclusive Virtual Environment - An experiment in creating 3D object text alternatives using WebXR.
- MRTK home - Overview of the Mixed Reality Toolkit (MRTK), a Microsoft-driven project that enables development for mixed reality applications in Unity.
- SignAR - A HoloLens app for detecting, reading, and displaying text in the environment. See accompanying paper, An Augmented Reality Sign-reading Assistant for Users with Reduced Vision. Note: Uses Unity 5.4.0f3
-
XR Access - A community committed to making virtual, augmented, and mixed reality (XR) accessible to people with disabilities. Their Accessible Development of XR (adXR) work stream focuses on making it easier for developers to create accessible XR applications. See their Slack and Github or apply for membership.
-
A11yVR Meetup - a Meetup for people who want to discuss topics around accessibility in technology for people with disabilities that apply to XR. Organized by Thomas Logan, founder of Equal Entry
-
HoloDevelopers - A Slack community focused on HoloLens development. See the #accessibility channel.
-
MIT Reality Hack - Reality Hack is an annual community-run XR hackathon composed of thought leaders, brand mentors and creators, participants, students, and technology lovers, who come together and attend tech workshops, talks, discussions, fireside chats, collaborations, hacking, and more.
-
IGDA Game Accessibility Special Interest Group (IGDA-GASIG) - A group of developers dedicated to gaming accessibility, with frequent forays into XR. Be sure to watch the Game Developers Conference 2021 videos on the IGDA-GASIG YouTube Channel.
-
W3C Immersive Captions Community Group - A community group of the W3C devoted to determining best practices for captions in immersive environments. Frequently includes exploration of prototypes.
-
Oculus Accessibility Development Forum - A portion of the Oculus forums dedicated to accessibility.
-
Osprey - An open-source, cross-platform voice typing program that allows you to use your computer and type with your voice. It can be used for coding, web browsing, dictating, or any other keyboard driven task.
-
WalkinVRDriver - Software for SteamVR that offers accessibility features to people with disabilities, such as co-piloting, virtual motion and rotation, and Kinect-based controller replacement.
-
Quha Zono - A gyroscopic, head-based mouse designed for people with motor disabilities.
-
EarSwitch - An ear camera that can pick up ear movement to use as a binary switch or potentially for eye tracking. See also earswitch.co.uk, email Nick@earswitch.co.uk for more information.
-
Forward for Good - An accelerator sponsored by Verizon focused on economic, environmental, and social advancement. Their current cohort is Disability Innovation, intended to help small US-based companies working on accessible technology scale up. Applications are open until November 1st.
-
Accessibility Unlocked - An alliance of disabled, neurodiverse, gender diverse, queer and allies working to change the shape of game development in Australia and New Zealand.
-
A Hacker's Guide to XR Accessibility - An article for hackathon participants working on immersive technologies. Includes guidance on accessibility, open source codebases, and hacking suggestions.
-
What I Know About: Being Sick at Work - Advice on how to go about discussing accessibility and accommodations in the workplace.
Some organizations that may be able to support user testing by people with disabilities:
-
Fable - An online platform to facilitate digital accessibility testing.
-
AbleGamers Player Panels - A community of players with disabilities ready to test games, facilitated by the AbleGamers charity.
-
Open Inclusion - A UK-based inclusive research and solutions consultancy, specializing in accessible design.
-
XR Distributed Research Network - An international platform for researchers to upload XR projects and find participants for them.
- The Locomotion Vault - A database of all known locomotion methods in virtual reality. Allows sorting by accessibility and many other factors.
-
Accessible Mixed Reality Project - A collection of research on how to design mixed reality (including AR and VR) so that they are usable by and useful to people of all abilities.
-
Gaze-Detection - A JavaScript machine learning library for creating gaze-controlled experiences.
-
Wearable Interactions for Users with Motor Impairments - A systematic literature review of wearable interactions. Useful for determining which wearables and motions are accessible for people with motor impairments. Also see video.
-
Equal Entry AR/VR/XR Articles - A collection of articles from Equal Entry about XR accessibility.
-
The Last of Us Part II Accessibility Settings - a comprehensive set of accessibility features in Naughty Dog's first person shooter, The Last Of Us Part II. Not in XR but highly relevant for navigating in 3D environments.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.