World tracking
In Onirix, Surface scenes allow the user to position an element on a horizontal area in front of him, and thus visualize the augmented reality content without the need for a specific marker such as an image.
There are two ways of displaying scenes of this type: content anchored to the surface the so called World tracking, or floating content (rotation tracking) that is fixed using the phone's gyroscope. Anchored content allows us to visualize a scene as if it were fixed to our environment: a table, a wall, the floor. While floating content allows us to place elements around the user. Here we will see the differences and how we can use each of these modes in Onirix.
World tracking: anchored content
World Tracking allows to detect horizontal planes in your environment, and place any type of content on them, which remains fixed throughout the augmented reality experience.
World tracking for Scenes
When you create a scene in Onirix from scratch, the default mode is World Tracking, also known as SLAM (simultaneous location and mapping). World-tracking offers a full 360-degree range of freedom, allowing you to move, rotate, and explore the AR content from any angle or perspective.
If you want to try it now just open this link and try yourself, say hi to our little robot! You can also access this test experience by scanning this QR code:
World-tracking for iOS: enhanced tracking with Onirix clip
To access the best possible tracking experience for surface-type experiences, one option available is to share them through the Onirix Clip, capable of launching experiences on the fly by accessing the ARKit operating system's sensors from the web.
More information about Onirix Clip and Onirix player.
World-Tracking on Android (WebXR)
On Android this mode is more robust thanks to the compatibility of Onirix with WebXR. This technology is available for any Android device supporting Google services for AR (ARCore).
List of Android devices compatible with ARCore: access the ARCore support devices here.
If you want to force Onirix Wold-Tracking instead, to provide a more homogeneous experience across Android and iOS, you can just add "disableWebXR=true" parameter to the experience URL.
World-Tracking on iOS (Onirix SLAM for Safari browser)
WebXR is the technology that web browsers provide for World-Tracking. Although it is still not universally supported across all browsers and devices, Onirix provides it's own tracking technology as a fallback and thus achieve a unified behaviour on all devices. Available in Onirix Studio since the release v.2.50.0 (May 2023).
Examples of bad environments where we do not recommend the use of Onirix World-Tracking (SLAM)
Our tech is based on detecting visual features (key points) in the immediate environment, through the camera. These visual features are processed and tracked frame by frame and allow us to triangulate and calculate the position of the AR content continuously. For the experiences to work stably it is necessary to provide the system with a suitable environment. Therefore, good scenarios will be any indoor or outdoor area where there are enough visual elements that allow us to recognize the environment and place the content reliably: rich texture areas, roughness and decorative elements (furniture, tablecloths, carpets, etc).
It is also important to place contents in a rigid environment (non dynamic), so we encourage you to avoid people walking, vehicles or other moving objects.
Therefore the situations you'll need to avoid for a reliable use of SLAM would be:
- Textureless environments: These environments provide limited visual cues, making it difficult to establish reliable tracking.
- Illumination changes: Rapid changes in brightness or shifts in lighting direction can confuse the tracking algorithms.
- Reflective and refractive surfaces (mirrors, glass): These surfaces can distort or alter the appearance of the environment, leading to inaccuracies in tracking.
- High motion movements: High-speed or erratic movements can produce motion blur, which disrupts the tracking process, resulting in drift or loss of tracking.
- Dynamic environments: SLAM assumes a relatively static environment during the tracking process. People walking around, moving objects, or any significant changes in the scene can introduce inconsistencies and disrupt the tracking accuracy.
World-tracking on iOS with WebXR (Mozilla WebXR viewer)
As of 23 November 2023, in version v.2.55.2, Onirix supports WebXR for iOS. To do so, you must use the Mozilla web browser: WebXR viewer.
It is one of the few browsers that supports access to WebXR capabilities, so we recommend its use when maximum precision tracking is required, based on the ARKit capabilities of compatible iOS phones. Simply copy the url of your experience and open it with this browser to enjoy the benefits of WebXR anchoring (connection with ARKit functionalities).
World tracking for Assets (an alternative without interaction)
Currently, content anchored in Onirix can be consumed either directly from a 3D model (asset viewer for web AR). If you want to display a fully anchored 3D model, and you don't need to add interaction with other elements through a complete Onirix scene, you can use this anchor mode.
Compatibility for World tracking
Using WebXR (Android)
WebXR compatibility available for Android phones with ARCore compatibility. Mobile web support for Android using the Google Chrome browser.
Approximately 60-70% of existing devices in use have this compatibility for use on Android.
Using ARKit with Onirix Clip (iOS)
iOS devices with ARKit compatibility (from iPhone 6s onwards). It is necessary to have the operating system version updated to 16.4 or higher. Available by accessing the Onirix Clip as the experience player.
More than 90% of existing devices in use are compatible with this type of tracking.
Using Onirix SLAM
We only recommend the use of SLAM on iOS devices if the Onirix Clip solution cannot be used for the experience in question. The compatibility in these cases is the same as the compatibility for Rotation tracking (but only focusing on iOS devices).
Onirix SLAM is not optimised for use on Android devices.
Rotation tracking: gyroscope only
All the information about this type of tracking can be found here, in the specific documentation page for rotation tracking.