Open the MappingApp scene found in the Assets/ImmersalSDK/Samples/Scenes folder.
Overview of the scene
The scene itself is simple and has only a few game objects in it.
AR Session,AR Session Origin and AR Camera
Game objects provided by AR Foundation and you can find more about their functionalities from Unity's documentation.
They provide the basic functionalities for the AR session.
Basic settings for our SDK.
Developer Token is where you would insert your token found in our Developer Portal. In this sample the token is not needed since there is a separate login process.
Target Frame Rate for the app. iOS can manage 60fps, but most Android devices are locked to 30fps.
Android Resolution specifies the image size used by our SDK computer vision. Some older Android devices have performance issues with bigger image sizes so you can change this if needed.
For mapping it is best to leave this value at Max for best results even if the UI feels sluggish.
iOS Resolution is the same setting, but for iOS devices. You can leave this at default, which for most devices is the maximum resolution.
EventSystem and Canvas
These are components of Unity's UI system. Our Login Panel prefab is found here as well as the actual Mapping UI that is instanced after a successful login.
The Mapping UI has the Mapper.cs script, which provides all the functionality for mapping locations.
Using the Mapping App
A quick-start video tutorial for mapping with the Immersal Mapper
Enter your registered email address and password when starting the Mapping App.
Workspace mode with GPS inactive
Workspace mode with GPS active
Workspace mode in landscape mode
The default view is the Workspace mode and has the following features:
Images stored in the Workspace.
Images queued for uploading to the Workspace.
Switch Mode button to switch between Workspace and Visualize modes.
Capture button to add images to Workspace.
Tools button for additional tools and options.
GPS Toggle to activate capturing of GPS coordinates
Delete Images allow you to delete images from the Workspace.
Toggle RGB Capture toggles between full color and monotone capture modes.
Add Anchor Image adds an Anchor Image to the Workspace.
Start Map Construction submits a new map construction job.
Resetting the workspace
You can reset the workspace by deleting all the workspace images.
You can also choose to keep the anchor image if it exists. This allows you to maintain the same coordinates for the new map, e.g., create a new or an extended version of the same map.
Visualize mode. No map downloaded for preview
The second view is the Visualize mode and has the following features:
Toggle Map Visualizations opens a map list and allows you to select maps to test and visualize.
Localization Statistics shows you how many localizations were successful out of all of the attempts.
Switch Mode Button to switch between Workspace and Visualize modes.
Localize Button to test on-device localization against selected maps.
On-server Localize Button to test on-server localization against selected maps.
Toggle Point Cloud Visibility Button to turn point cloud rendering on and off.
GPS Toggle activates GPS based filtering for the map list. Only nearby maps are shown.
Toggle Map Visualizations
Different options for maps in the map list
The Red Cross means the construction has failed.
The Blue Cogwheel mean that the construction is not done yet.
The Green Check Mark means that the construction was successful and the map can be downloaded for testing.
With GPS active, only nearby maps are shown
Restoring and Deleting Maps
You can restore old map data into the workspace or delete maps completely from the map list.
Click the right arrow icon to open options for a map
Restoring map data overwrites whatever images were stored in the workspace!
Deleting is permanent. The map can not be recovered, even from the Developer Portal!
Click the arrow icon to toggle between map options.
The trashcan icon will permantently delete the map.
The download from cloud icon will overwrite the workspace with the map data.
You can test the localization of the map with both on-device and on-server localizers.
Once you download a map to the device from the list, you should see a point cloud floating in the scene. After a successful localization, the point cloud will precisely match the real world.
Device successfully localized against a map
The second button with the pin icon is the Localization button. It uses the on-device localizer.
The third button is a On-server Localization button. It sends data to our servers and the computation happens. on the cloud.