Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Progressive WebXR #667

Open
apowers313 opened this issue Feb 16, 2024 · 2 comments
Open

Progressive WebXR #667

apowers313 opened this issue Feb 16, 2024 · 2 comments

Comments

@apowers313
Copy link

Is your feature request related to a problem? Please describe.
Sometimes I want to work on my desktop. Sometimes I want to work in my VR headset. When exploring networks with all these awesome web components I want to have flexibility around which interaction model I use, and I want feature parity (drag & drop, controls, etc.) across the models -- without using different components. Basically I want Progressive WebXR.

I think this is timely because of all the interest around Meta Quest 3 and Apple Vision Pro as potential productivity platforms. :)

Describe the solution you'd like
Three.js has a VR / AR / XR mode that allows you to interact with the WebGL canvas in any mode. Rather than using A-Frame, you can have Progressive WebXR.

I've played around with this a bit and I've been able to modify the basic three-forcegraph render loop and add a VRButton / ARButton / XRButton to enter VR. (AR is especially fun :) ). I also tried monkeypatching _animationCycle in 3d-force-graph, but that didn't work for some reason. I'm also struggling to figure out how to get the VR controls to work in threejs.

Describe alternatives you've considered
I thought about creating logic for switching between the 3D / VR / XR components, but even with that there's such a discrepancy in features that it's not really going to be a progressive experience.

@apowers313
Copy link
Author

Created PR #670 as an initial proof of concept.

@apowers313
Copy link
Author

Proof of concept in BabylonJS: https://forum.babylonjs.com/t/3d-vr-ar-force-directed-graph/49886

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant