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

Integrate ARCore Geospatial API into AR Toolkit #424

Open
kamszyc opened this issue May 12, 2022 · 2 comments
Open

Integrate ARCore Geospatial API into AR Toolkit #424

kamszyc opened this issue May 12, 2022 · 2 comments

Comments

@kamszyc
Copy link
Contributor

kamszyc commented May 12, 2022

On I/O 2022 Google introduced ARCore Geospatial API
https://developers.googleblog.com/2022/05/Make-the-world-your-canvas-ARCore-Geospatial-API.html
https://developers.google.com/ar/develop/geospatial

The ARCore Geospatial API utilizes data from Google Earth 3D models and Street View image data from Google Maps to enable your app for immersive, global-scale, location-based augmented reality experiences.

Integrating with it in AR Toolkit should improve ARSceneView positioning precision in urbanized areas.
However, it relies on availability of Street View data, so it should probably be an optional feature.

What do you think, is it a good idea to integrate it? Do you intend to do it?

@nCastle1
Copy link
Contributor

I made some progress on a prototype. I have it in a branch: https://github.com/Esri/arcgis-toolkit-dotnet/tree/ncastle/geospatial-ar. In my limited testing, performance was very good under ideal conditions (outdoors, urban center, full daylight, strong cellular connection).

If you want to try it out, you would need to supply an API key (per instructions at https://developers.google.com/ar/develop/java/geospatial/enable#api_key_authorization) and an ARCore package for 1.33.0. There is a PR open for 1.31.0 version of Xamarin ARCore bindings, and I suspect building with that version would also work. xamarin/XamarinComponents#1377

At least according to the documentation, the Geospatial API depends on Google Play location services. I'm referencing an older version (118.0) of that package because of dependency conflicts with Xamarin.Forms and the newer Play location services packages.

This comment is not a promise or commitment to move forward with including this in the product. There are currently no plans to release ARCore Geospatial API support as part of Toolkit.

@nCastle1
Copy link
Contributor

I've pushed an update to the branch that gets closer to a reasonable architecture and fixes an issue with double counting translational movement.

Currently the big remaining issue is altitude adjustment. Even with using the geoidal separation from the GPS to offset the altitude from Earth, it still consistently places me underground. There are some hacks to get reasonably good behavior, but I'd prefer to find a way to get absolute vertical positioning working properly.

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

2 participants