MozillaReality / hello-webxr

INACTIVE - Hello WebXR
https://mixedreality.mozilla.org/hello-webxr
MIT License
288 stars 88 forks source link

Does not seem to allow navigation and do anything in Desktop browser #79

Closed blairmacintyre closed 4 years ago

blairmacintyre commented 4 years ago

I tried this in Firefox on my mac. I can't seem to move around or do anything except look around.

The core value-proposition for WebXR is that we can build sites that support progressive refinement and do something reasonable on any device.

This experience should work in everywhere, right? All of the demos are reasonably delivered outside of an immersive display.

fernandojsg commented 4 years ago

We included a debug mode that will let you move around using the cursors if you add ?debug to the url.

Regarding the progressive enhancement, that's for me the value of WebXR but slightly different from your point. For me the core value is to be able to deliver experiences to a wide range of devices and platform, but I feel it's ok if an application's requirement is that all these devices has immersive mode and/or controllers. Sometimes is really hard to add a compatibility mode in non-immersive mode just for the sake of having that fallback without really adding any extra value.

In current hello webxr experiments, and others we had planned to at to it, we were targeting the lowest common denominator, so that's why we just use a button controller, so it works on all the devices, even on 3dofs devices. Our idea for the experiments that will live around it is to experiment with the XR medium and see what it can offer in terms of UX. Sometimes I get the feeling that if you have just a dumb 2D/3D version of a VR experience, people could just try on their browser and thinking "nah this is boring", without even giving it a try on VR, where it could be pretty interesting instead. It's like if you try to add a mouse/keyboard compatibility mode to beat saber, and you try it before buying a quest...

In any case, I expect us to deliver new progressive components in ECSY (like a laser controls that could fallback to a mouse or gazer) that could help delivering that kind of progressive behaviour, but that won't necessarily be a priority for all the experiments we could be delivering here.

fernandojsg commented 4 years ago

Closing it in favor of https://github.com/MozillaReality/hello-webxr/issues/80

blairmacintyre commented 4 years ago

I think we're missing a huge opportunity. I love this demo, and I love that people are commenting about "this shows WebXR can compete with Unity", but we are missing a massive opportunity to be showing that WebXR IS BETTER THAN UNITY. This demo, with proper support for tablet/phone/desktop/laptop, even trivial/simple support, powerfully shows that you can create content that leverages BOTH immersive XR and 2D screens on the web. Something that is quiet a bit more challenging in Unity.

fernandojsg commented 4 years ago

Don't get me wrong, I'm totally with you on the responsive XR & 2D screen way to go, actually we have done that in all the demos we released within the team so far. The problem with this one is that there are interactions that will feel weird: how to play xylophone with mouse and keyboard? painting with your mouse on the graffiti wall when the wall is not totally aligned with your view and the spray "physics" depends on the distance will end up in something really weird (I was doing it that way when started developing it). Also the "fight" for us in "WebXR is better than Unity" is already in our side in terms of walled gardens stores/platforms/sdks/device features, ... among many other unique features The other point of view regarding not looking like just a bunch of random cubes with ugly light and "coder colors" is more on the land of "WebGL vs Unity" ensuring that the web is capable enough of presenting good (enough) graphics, and in that front there are already better demos than this one anyway.

And honestly knowing the amount of work that it could take to properly support other interactions (that won't be anyway, the state of the art of, let's say, mouse/keyboard interactions but a dumb fallback) vs working on new XR UX and interactions, I believe it's way more interesting for the success of WebXR to work on the later

blairmacintyre commented 4 years ago

I don't think this is all or nothing.

Simply disable the inappropriate experiences, with a message on them. Put a graffiti image up and say "to try this, use an immersive device". For the xylophone, play the notes they hit with the mouse; in both cases, don't show the control devices, or have them sitting there with text that says "Can only be picked up with immersive controllers".

But, certainly many of the other experiences (panos, the room with the models, etc) are perfectly fine as "use touch or WASD + mouse to walk around" kind of experiences?!?

As for "winning" versus Unity. I completely disagree that it's already on our side. And it will get worse, as more and more of the capabilities of devices (hand tracking, new forms of sensing) come out that we don't properly expose in the web. This will be more problematic in AR, where things like object/image detection, sharable / persistent placemarks, etc., have no clear path to cross-platform standardization. We need to play to our strengths.

joshmarinacci commented 4 years ago

I don't mind being only immersive (for the time being) but we should have appropriate messaging. Ex: let you nav with keyboard controls (arrows + wasd) and have text indicating that you have to be on a device that supports immersive mode, with a link to FxR and supported devices.

On Mon, Feb 3, 2020 at 10:36 AM Blair MacIntyre notifications@github.com wrote:

I don't think this is all or nothing.

Simply disable the inappropriate experiences, with a message on them. Put a graffiti image up and say "to try this, use an immersive device". For the xylophone, play the notes they hit with the mouse; in both cases, don't show the control devices, or have them sitting there with text that says "Can only be picked up with immersive controllers".

But, certainly many of the other experiences (panos, the room with the models, etc) are perfectly fine as "use touch or WASD + mouse to walk around" kind of experiences?!?

As for "winning" versus Unity. I completely disagree that it's already on our side. And it will get worse, as more and more of the capabilities of devices (hand tracking, new forms of sensing) come out that we don't properly expose in the web. This will be more problematic in AR, where things like object/image detection, sharable / persistent placemarks, etc., have no clear path to cross-platform standardization. We need to play to our strengths.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/MozillaReality/hello-webxr/issues/79?email_source=notifications&email_token=AACDTSX7EOSHAMDDBU77WHLRBBP23A5CNFSM4KPFMVC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKU5EUY#issuecomment-581554771, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACDTSXUHRBNNIDKJDCAX5TRBBP23ANCNFSM4KPFMVCQ .

blairmacintyre commented 4 years ago

I understand there is "only so much time", but admit this still mystifies me. I'm not suggesting that everything has to work. But, being able to move through the spaces with WASD+mouse, and do "the easy" things (enter into 360 images / video, go into the different rooms, etc) seems trivial. You could even use the more interactive experiences (xylophone, spray paint) to push people to try it immersively (put message above mallets, show a pre-painted message on the wall, both of which say "only works immersively")