A few days ago, Microsoft announced that they are starting development on experimental WebVR support in Microsoft Edge. OSVR supports WebVR in Mozilla Firefox and we hope to carry this support over to Edge.
Upon reading this news, I wanted to write again about why WebVR is important. I then ran into a post by Sean T McBeth. Also based in the Greater DC area, Sean is lead VR engineer at NotionTheory and author of PrimroseVR, a WebVR application framework. I realized that I could not have written this any better, so with Sean’s permission, I am posting his thoughts here with very small edits:
WebVR will be great for the same reason we worked in Web-first mobile apps for so many years. The Web is just fundamentally great. It’s:
- Democratic – anyone may publish to the web. Even someone who doesn’t own their own computer can go to their local library and get started. Everyone’s ideas can be heard. New ideas get generated much faster, and they get tested by their merits. This also ensures that bad actors get replaced very quickly.
- Open – anyone can click view-source and see how something is made. Modern browsers provide more powerful inspection tools that can be used to completely tear apart and rebuild entire sites. This lets users consume the Web on their own terms. Good, new ideas spread very quickly.
- Social – We all see the same web, and we can communicate what we see through it.
- Connected – The URL is the ultimate unit of sharing. Linking lets us discover new, related things. Linking helps us riff on ideas faster. Linking helps us think in simpler terms. Linking lets us communicate faster, by ensuring common, shared knowledge is guaranteed.
- Distributed – There are so many publicly published data sources from which to pick and choose, and they don’t have to all be in the same place. Linking lets us pull in ideas from everywhere.
- Composable – a natural result of being Distributed, Social and Connected.
- Cross-platform – it’s on more devices that people actually care about, with mostly the same APIs, than Java ever managed to achieve. People expect the Web to just work without having to worry about what device they are using.
- Ephemeral – you don’t download a runtime, then an application, then install, then grant permissions to Web apps. It’s possible to make web apps that are much smaller than their native equivalent, making it easy to try an app out before really committing to it.
- Responsive by default – Often times, the best content is simple, semantic HTML with very light styling. User agents are pretty good about rescaling simple documents to match the user’s device. The situation will be different in WebVR, we will want to respond to the user’s capabilities more than their device’s size and shape.
- Discoverable – Things on the Web aren’t hidden away under a proprietary, walled-garden-app-store’s broken search feature or proprietary, binary data formats. Anyone can implement a search over the Web, and several have. Proper, semantic design allows user agents to also understand documents better, to help users with accessibility issues (or even just really busy people needing a summary).Unity and Unreal and Lumberyard and all of those things will always be able to provide a unified, extremely productive content creation experience. They make it really easy to go from zero to “works on my machine”. But that’s just one very small part to the whole ecosystem. They will always have to work harder than the Web on the aspects of Responsiveness and Cross-Platform-Compatibility, will not be able to compete on Discoverability, Connectedness, Distributedness, Socialness, and Ephemeralness, and are actively hostile to Democracy and Openness.