facebookarchive / react-360

Create amazing 360 and VR content using React
https://facebook.github.io/react-360
Other
8.73k stars 1.23k forks source link

Use web-vr polyfill? #148

Closed sabithpocker closed 7 years ago

sabithpocker commented 7 years ago

Use web-vr polyfill for stereoscopic view in unsupported browsers.

Feature Request

Expected behavior

Stereoscopic view should work in iOS Safari and other unsupported browsers using web-vr polyfill.

Actual behavior

No support for iOS safari or other non web-vr browsers.

Reproduction

No cardboard view in iOS Safari for base example

Solution

Use webvr-polyfill to enable stereoscopic view in iOS Safari and other non-web-vr browsers. This apparently works well for the basic example in iOS Safari using WebGL. Also provide a brief note in README on how to optionally do this setup in a project.

andrewimm commented 7 years ago

Some external devs have explored getting the polyfill to work. The biggest challenge is that the polyfill makes certain assumptions about your page that we can't guarantee. Regardless of whether it can run, you can also expect less-than-desirable run speed with the polyfill on iOS.

Our core team unfortunately doesn't have the time to explore this at the moment. Perhaps when we have more time, and the framework is in a more stable place, we can commit some of that into exploring how to get the polyfill running reliably. In the meantime, we welcome anyone in the broader community to take this on!

Speaking for myself, I'd personally rather see great immersive content on a 2D mobile display than low-framerate, low-quality VR content on an iOS device that's going to hurt perceptions of VR.

sabithpocker commented 7 years ago

Sounds right! I'll anyway resort to using polyfill while I'm experimenting with Web-VR using iPhone and basic HMD. @andrewimm But what would be a good choice for full-framerate, full-quality VR content? What do you use for testing? Which VR Device and Browser?

andrewimm commented 7 years ago

You're going to see better framerates and quality on browsers that actually support WebVR. The difference between those and the polyfill is that they are able to perform the inverse lens distortion at a native level, and are able to more rapidly update in response to headset movement.

Since there's no indication that Apple wants to adopt WebVR at this time, we will eventually need to explore a dedicated solution for polyfill users.

leonaves commented 6 years ago

I'd personally rather see great immersive content on a 2D mobile display than low-framerate, low-quality VR content on an iOS device that's going to hurt perceptions of VR.

Without stereoscopic functionality, react-vr apps look like garbage on iOS, you can't make anything out. I don't see how this hurts perceptions of VR less than some dropped frames.