Originally people thought canvas was just about painting boring images on a bitmap...
... or for adding wet floor effects for photos.
The lesson learned: given the tools people will do anything with a canvas!
Like building a rich text editor in canvas: Bespin was published by Mozilla and is now part of the Jetpack code editor.
Therefore it is important that there is fallback content.
Fallback content, aka. “the shadow DOM,” is always exposed to assistive technologies, unlike other fallback content that’s only displayed if the browser doesn’t support the element. Shadow DOM elements must be keyboard accessible, and the corresponding part of the bitmap must be highlighted with a focus ring, probably a caret position as well in the case of editable content.
In a 3D context one of the strongest use cases is in games. This is a demo of the 3D jump & run game “Infinite Journey” created in WebGL that runs in your browser (if you are lucky enough to have the right chipset).
In games the interaction is limited to a small number of objects, mainly player and non-player characters as well as items. They are in control of players or the game vendors and are well defined.
However, the main challenge in games is reaction time. Games for blind people feature several mechanics to support this, like audio cues, “earcons” (similar to icons), a sound radar to spot enemies and friends, sometimes tactile feedback is used (vibration) to identify objects, and there is speech synthesis for announcing the names of objects. There is a problem with hardware acceleration because it goes directly to the GPU, bypassing the accessibility API.
In 3D social worlds like Second Life the challenges are different.
There is user generated content. A lot of it! About 40% of the objects don’t have alternative or descriptive texts, on some islands as high as 85%. To prevent clutter, users get summaries of the number of people and objects present. Also only objects within a 10-20 meter range are announced. Screen-reader support is crucial because users heavily customize their software.
Eelke Folmer did a lot of research on the topic of accessibility in 3D worlds. Also IBM published games for blind and vision impaired people. I’d like to encourage you to contact them.
But it doesn’t stop at games and social worlds. For example there are medical applications. A CT scan of a hand has about 20-30 MB, a full body scan about 700 MB. I can imagine tools to process this information in the browser.
And of course architects use 3D models, among others.
Therefore my plea would be to reach out to the Khronos Working Group and vice versa.
Because bolt-on accessibility is ugly,
Whereas inclusive, integrated accessibility is beautiful …
… and good for your health.
Accessibility in Canvas 3D
to the Next Dimension:
HTML WG & HTML Accessibility Task Force.