top of page

Setting Up

Prepare and import the model of your building. Each floor or map segment should be a separate model. 3D models will be used for minimap, runtime positioning and objects-occlusion using raycasts.

Screen Shot 2021-09-10 at 3.29.40 AM.png

Creating Graph

Place and arrange all vertices and set their ID. Add any applicable point of interest or a room. Run the app, it will calculate all rooms' sizes and then build and visualize the graph.

Captură de ecran din 2019-09-04 la 11.11.42.png

Building Project

Compile and run the app in debug to see how virtual world match the real one, make any necessary changes, repeat the process.

Screen Shot 2020-04-20 at 10.13.37 PM.png

App Launch

When the user launches the app, they will be prompted to scan the QR code used to download the app. This is needed to immediately set their position in the virtual world. Using such QR code is the most convenient way to ensure the accuracy of the user position. Also, it’s possible to use any image which can fit on an A4 sheet instead of a QR code.

Predefined Locations

The user can select their position from a predefined list. In the provided demo level, this list contains of 5 most popular positions for the chosen target area. Buttons are embedded into a scroll box, so it’s possible to add as many predefined positions as you want.

 

Also, the user can select their position using manual input. In this scenario, the user position will be set to a vertex with an ID that they have entered (the user will be virtually teleported). To make this process easy and convenient for the user, set vertices’ IDs to some friendly name (for example "Canteen" and "Assembly Hall”).

IMG_2877 2.PNG

Start

After the initial position is set, the app starts the AR session and prompts the user with a small message regarding how to use the app. Now the app and its minimap will react to user movement seamlessly using visual-inertial odometry provided by ARKit and ARCore runtimes.

Selecting a Destination

The user can choose a destination point from a predefined menu or enter it manually. The app searches for a vertex with the given ID and marks it as a destination point.

Pathfinding

The navigation path from the user current location to the destination point will be calculated in real-time (using regular or fast algorithm) and displayed as a spline with animated arrows. Also, the app will display and update remained distance in real-time.

Screen Shot 2020-04-21 at 2.01.47 AM.png

Minimap

During the whole period of navigation, the app will show user location and rotation relative to true north on the dynamic 3D minimap.

IMG_2260.png

Markers

The user can tap on any detected surface to place a custom marker. The marker will snap to the surface, and will show its given name and distance to the user.

bottom of page