This us a quick guide into using IndoorAtlas Unity SDK, which enables cross-platform app development, with a focus on enabling location-aware Augmented Reality (AR) apps. 

The plugin itself can be found here: https://github.com/IndoorAtlas/unity-plugin


Getting Started


Requirements:

  • Unity 2020.2.6f1 or newer

  • iOS 11+ or newer

  • Android 7.0 “Nougat” or newer


Create a new project in Unity, in the project settings make sure the minimum API level for android is set to 7.0 or higher and 11.0 or higher for the minimum iOS version. For iOS you also have to fill out the “Camera usage description” field.


Install the following packages in your project:

  • AR Foundation

  • ARCore XR Plugin (for Android support)

  • ARKit XR plugin (for iOS support)

  • XR Plugin Management



Basic scene setup should look like this:



AR Session, AR Session Origin and AR Camera setups the AR scene (for more detailed information about these components, refer to the Unity’s documentation: https://docs.unity3d.com/Packages/com.unity.xr.arfoundation@4.1/manual/index.html)



IndoorAtlas Session



Manages the IndoorAtlas positioning session, only one of these components should be active at a given time! Any other IndoorAtlas component should be a child of the IndoorAtlas Session component. The component broadcasts positioning events to all child components, if you are interested in receiving these events, check out the IndoorAtlasSession script for more details.



IndoorAtlas AR Wayfinding



Manages a AR wayfinding session. Only one of these components should be active at a given time! PlaneManager and Camera should point to the AR Session Origin component and AR camera gameobject. Compass, goal, and turn can be given your gameobject of choice for AR visualization. Target should be set to the wayfinding goal, and the wayfinding property controls whether to stop or start routing.



IndoorAtlas UI Information Provider



Convenience component for quick session and debugging information. Mostly tailored for the example Unity project, but can be useful for getting started.


If you need further support, please contact us by creating a support ticket or contacting us by email.