immersive-web / navigation

Repository for the discussion and research in to navigating from page to page whilst staying in immersive mode. Feature leads: Rik Cabanier and Brandon Jones
Other
70 stars 9 forks source link

How web devs can help immersive navigation become a thing ? #15

Open arthurmougin opened 1 year ago

arthurmougin commented 1 year ago

This is a carbon copy of the conversation that happened on the WebXR discord server about navigation based on a suggestion from @dmarcos :

Slt (Myself)

... What can be done as a web dev to help immersive navigation become a thing ?

Yinch (still looking for github id)

Can I confirm if immersive-to-immersive webxr already currently works for same domain name webxr pages? On quest browser.

Slt to Yinch

I know about same site, but across different sites is the end-goal

I know about the deep security issue and I am totally open to cross-site requiring additional security measures !

@davehill00 (Dave Hill) to Yinch

I know @cabanier (Meta) was working on this. I'm not sure what the ETA is for this shipping -- might be in our v24.4 release (which should start rolling out later this week).

@cabanier (Rik Cabanier) to Dave

Yes, same origin immersive navigation will be in 24.4

Dave Hill to myself

This will may be an unsatisfying answer, but I think the best thing web devs can do is demonstrate the value and potential of WebXR content generally and immersive navigation in particular -- e.g., with same-origin immersive navigation coming soon, build experiences that show the value of being able to hop between different worlds. e.g., if there was a "WebXR Worlds" site that hosted a bunch of awesome WebXR destinations, same-origin immersive navigation would allow users to navigate between those worlds seamlessly. Building this into something that was getting real traction with users and that really demonstrated the value of being able to stay immersed while traveling to new WebXR destinations would go a long way to prove the value of immersive navigation.

@limbofeather to Dave

What do you think will be the incentive for devs to do this?

Slt to Dave

Who would we need to prove the value of Immersive navigation to?

Slt

To sum it all up, same-site navigation need to get visibility and popular use-cases before research start to be done on cross site navigation, is that correct?

@matthargett (Matt Hargett)

Is this something we can iterate on in Hubs? I did some research on this “world link traversal” idea last year. My go to reference was Ratchet & Clank: A Rift Apart. Their approach has so many smoke and mirrors at each layer, you could downgrade each aspect of it per device capabilities and it would still be both functionally useful and cool to look at.

Slt

hubs has already something for quick navigation

Slt to Matt

how does it would make the navigation more secure ?

Matt Hargett

do it across different Hubs Cloud instances as a first proof/iteration point?

Slt

it's called fast room switching on hubs 🙂

Rik Cabanier

something like that would be great. We suspect that there are pitfalls with the current immersive navigation implementation but until we get it in the hands of developers, we won't know if they're real problems or something that one can code around

Matt Hargett

It certificate trust chains aren’t enough, maybe a Web of Trust approach a la PGP and old sk00l web rings? I had some notebook ideas around this from a few days ago. I can hop on a voice chat and discuss before my 11am

Slt

it's not about crypto it's about a website faking the navigation

Matt Hargett

ohhhh ok sorry

Slt

how can you visually trust what is happenning ?

Rik Cabanier

yeah. The reason same origin was approved was because you can already fake navigate in webxr by changing the history

Matt Hargett

I see. You’d need a kind of 2FA as a non-immersive verification

Rik Cabanier

you need a non-spoofable action before the navigation ie on quest, pressing the menu button

slt

i would imagine the browser presenting the home space with profil while navigating, a faking website could not know os level secrets

Matt Hargett

yea, like a control+alt+delete like Windows NT added

Rik Cabanier

websites can't intercept the menu button

Matt Hargett

also, an OS hook could be useful for parental/safety controls right So would the API take a link and then return a promise that accepts/rejects based on if the native system interrupt was triggered correctly? Is there more to it than that?

Rik Cabanier

the navigation would happen as usual, what happens afterward needs to be defined for same origin the new site can register an event handler so it can resume the session

Matt Hargett

wouldn’t you still want that to be client/configurable by the user? Again, parental controls is what I’m thinking around One site with a million experiences, but I only want to grant navigation to these 3 same use case for corporate governance/policies

Rik Cabanier

parental controls happen on every navigation so that would be the same for immersive safe browsing happens on every http call

Matt Hargett

hm for a portal, it seeks you would at least want to do a Render To Texture technique based on where the user will appear in the new space, but you may want to not do that preview for parental/corporate control reasons. It seems like you’d want to do these checks well before a navigation attempt, no?

Rik Cabanier

if you want to render a preview of the destination url, that would have to go through parental controls and safe browsing so it would be blocked

Matt Hargett

Got it. Sorry to derail the discussion,I have a lot to come up to speed on 🙂

Slt

Hey, can we set a 360 image from the target site as a background during the navigation?

Rik Cabanier

that was one of @Tojiro 's proposals. It's not implemented for now so during the navigation, the website will look frozen so it's imperative to start drawing as soon as possible

Dave Hill to Slt's "To sum it all up..."

Yes and no -- there are definitely people thinking about this problem and how to solve it. As Rik outlines in the comments above, this is a recurring topic in the Immersive Web Working Group. But more clarity on use cases, user/developer appetite for the kinds of experiences that immersive navigation unlocks, etc. will help provide further motivation to figure out a solution.

Slt to Dave's "Yes and no..."

How can we add to the conversation then? Participating to the github issue discussion? Exploring and prototyping?

@msub2 (Daniel Adams)

There is also actually proposing a specification for the behavior on the navigation repo, which I have started a draft of (just havent been able to work on it more while I've been traveling)

@dmarcos

happy to see discussion on immersive navigation. My most wanted feature since I started working in WebVR in 2014. In the current proposal I wrote I left out browser UX specifics. https://github.com/immersive-web/navigation#developer-and-library-maintainers-considerations Standardizing UX might be premature, makes the spec harder to agree upon, leaves less space for exploration / iteration that I think it’s needed to converge to a good solution

Mike-McAnally commented 1 year ago

I have to speak up on this one. Despite the security concerns, which I admit I don't fully understand. Not having the ability to link from one immersive page to another, while stayng immersed, even across different domains seems like such a no brainer that I have trouble getting why it wasn't just a basic requirement in the WebXR spec. Anyway, what ever the reason may be, I would have created the metaverse myself by now if it were not for this single limitation! I do joke, but I had to give up many different design decissions, in the past when it worked with deprecated WebVR, because of this idea breaking limitation. Let's make this incredibly powerful capability just a standard. Or again, whatever, just make it work!

runvnc commented 4 months ago

I believe it's a red line that technical managers or executives may have drawn in order to protect the future of their proprietary closed platforms. An open, functional, and popular virtual reality web has the potential to reduce the profits of stores like Meta's.

It's a shame. Having a common open platform for shared virtual spaces and software is intrinsic to the idea of the Metaverse. Greed works directly against this as all Metaverse platforms are kept under control of individual companies, which dramatically limits their reach. The web would be a natural place for the Metaverse to flourish if not for this greed and lack of foresight.