This guide explains how to help user define a playable area for an AR application.
Why surface scanning
For AR to work, applications need to:
- understand the model of the space around users so that they can create a map of the space and display contextual content (spatial mapping)
- detect specific physical surfaces that are are good for AR content to be placed on (surface mapping)
This is necessary because of the limitations of current devices:
- they are not capable of reading the entire space in one go
- they can analyse only what’s visible to their sensors (e.g. camera)
- environmental conditions, such as artificial lightning can compromise detection
- reflective surfaces can be harder to detect
Because of these limitations, devices need to be moved around the space by the user, until:
- the whole space has been mapped
- a suitable surface has been found</li
Example
When to ask to scan
Surface scanning should be done at the beginning of the experience so that content can be displayed without further interruptions.
Real-time guidance
Users might be not familiar with this interaction so it helps providing guidance on:
- how they need to move the device
- what a suitable surface might be (e.g. non shiny, flat)
- what are the best conditions (e.g. natural light)
Real-time feedback helps users understand what’s happening and which surfaces are being detected.
Examples
A number of examples from various iOS AR apps
Ikea Place AR scanning
When a surface can’t be found
Surface detection is far from being perfect and users might not be able to find a suitable area for the experience.
In this case, consider:
- offering additional guidance (e.g. change room)
- providing a 3D alternative that does not require AR
- using fiducial markers as a fallback