A downloadable toolkit for Windows, macOS, Linux, and Android

Download NowName your own price

Current version:  v0.3

Pupil is a Unity VR toolkit for low-impact accessibility features and optimizations backed by research. 

Features include:

  • Dynamic IPD adjustment without the need for expensive hardware
  • Low-contrast outline shaders for softer outlines on meshes
  • Dynamically adjusted depth of field with the Unity post-processing stack
  • Plug-and-play Unity prefabs and components
  • Accessibility features for color blindness and strabismus/amblyopia

Why Pupil?

In addition to being  easy to use, Pupil is a tool kit for developers to maximize visual accessibility for their VR experience. With roughly 10% of males and 1% of females suffering from some form of color blindness and even more diagnosed with strabismus or amblyopia, implementing Pupil in your experience just makes sense to maximize accessibility for your players.  Furthermore, Pupil comes with custom camera rigs that mimic the intricacies of the human eye providing a more natural, comfortable experience for your customers.

Please note that Pupil is not a VR eye therapy solution. It's goal is to accommodate to players with eye conditions, not to correct them. Pupil is solely an ergonomics solution. If you are interested in VR eye therapy, check out Vivid Vision.


Pupil was designed from the ground up to work on all major VR platforms ranging from Google Cardboard to the HTC Vive Pro.

Accessibility Settings

Using the external Pupil Settings Menu app, players can adjust their experience to fit their diagnosis. Settings for eye offset, minimum and maximum inter-pupillary distance (IPD), and color tinting for color blind players are all included out of the box.


Pupil Website

Pupil Source Code


Pupil is licensed as open source software. © 2021 Tristan Damron

If you make something awesome with Pupil, tweet me @twomo_! I'd love to see what you all make :)


Download NowName your own price

Click download now to get access to the following files:

Pupil.zip 125 MB