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

Feasibility and desirability of persisting anchors #69

Closed
AdaRoseCannon opened this issue Oct 12, 2021 · 6 comments
Closed

Feasibility and desirability of persisting anchors #69

AdaRoseCannon opened this issue Oct 12, 2021 · 6 comments

Comments

@AdaRoseCannon
Copy link
Member

/tpac Persisting anchors on a device to allow a session to resume where they left off with the same anchors.

@probot-label probot-label bot added the TPAC label Oct 12, 2021
@cabanier
Copy link
Member

cabanier commented Dec 9, 2021

@AdaRoseCannon did we end up discussing this at TPAC?
FYI Oculus just released support for persistent Spatial Anchors.
I would love to add support for anchors to the Oculus browser as long as they support persistence. Otherwise I think that they are not useful enough.

@AdaRoseCannon
Copy link
Member Author

AdaRoseCannon commented Dec 9, 2021 via email

@cabanier
Copy link
Member

cabanier commented Dec 9, 2021

We would be building on top of our OpenXR implementation which is part of the OpenXR standard.
The API could be extremely simple: an anchor can be saved to an unique ID and an author can use this unique ID later to reconstruct the anchor. The UUID would be tied to the origin.

@bialpio
Copy link
Contributor

bialpio commented Dec 10, 2021

From my perspective, it's unlikely that we would implement anchor persistence in Chrome anytime soon. In order to do so on top of ARCore, we'd have to use Cloud Anchors API, which IIUC would mean that ARCore needs to reach out to a backend service (some details here), and I'm not too thrilled about that.

Non-exhaustive alternatives that we could pursue in Chrome for Android:

  • Come up with a way of persisting anchor information without ARCore's (direct) help, using existing APIs (point clouds, plane detection, maybe throw in GPS data to the mix?). I have not yet attempted to design something like this; it may be a bit easier than trying to come up with a cross-framework format for sharing anchors as it would only have to work with ARCore, but it does resemble a more general "anchor sharing" problem to me.
  • File a feature request on ARCore to provide a simpler API to persist anchors locally, with the hope that the backend service is mostly there to enable anchor sharing, which we don't need here.

Standard disclaimer that it is my personal opinion, other team members may disagree with me. I also may be missing something, I have not dug too deeply into the problem yet.

@cabanier
Copy link
Member

cabanier commented Dec 10, 2021

@bialpio it's unfortunate that you need to reach out to a backend service. Is the issue that this would be too much setup cost or that it's not part of Chromium? If I remember correctly, Chrome already uses some backend services for web features.

@thetuvix , I see that there are Microsoft specific OpenXR extensions for Anchor persistence. Are you interested in exposing that?

@Yonet Yonet removed the TPAC label Aug 9, 2022
@cabanier
Copy link
Member

Persistent anchor are now in the spec

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

4 participants