Surface: 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.

Surface tracking: anchored content (world tracking)


Surface 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.

Surface Anchoring 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 on iOS (and android devices without WebXR support)

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 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.

Surface 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.

Rotation tracking: gyroscope only

For cases where it is not necessary to anchor the content to the surface continuously, you can opt for a surface simulation through the gyroscope, and with this effect get the elements of the scene floating around the user.

For example, in this experience a gamification dynamic is generated in which the user has to hunt logos around him, to improve his score. These logos appear floating around him, using this mode of placement based on rotation.

In these cases, a property of this type of scenes can be very useful: autoload. With this the content will appear in front of the user without the user having to select the surface. Interesting for game dynamics, tourism, etc.

Try yourself a rotation tracking example

To access the full experience and try the game visit our experience library: