With the reveal of Magic Leap's developer documentation last week, many questions have been answered—and several new ones have been raised as well. But since the Magic Leap One (ML1) isn't simply called the "Leap One," these are questions that the company probably has no interest (at least for now) in answering. Understandably, Magic Leap wants to keep some of the "magic" under wraps.
Case in point: object persistence in augmented reality. The term persistence refers to the idea of virtual objects staying in a spot even when you are not looking at it. If you were to leave and come back later, you or someone else should be able to see the object.
When it comes to sharing augmented reality experiences, having a digital object in the same place on all devices is an essential element to creating the immersive illusion. One way of achieving this result is through a device communicating a user's pose (a common term for position and orientation) to the other devices sharing the immersion.
For this to work, the devices also need a way to share a relative starting point. And while persistence can be scaled to be a much bigger question than a single device or device type, it is a question that starts with those devices.
With the Microsoft HoloLens, while the mystery behind its inner workings is a closely guarded secret, we know that the technical problem of synchronized sharing is solved through what Microsoft calls spatial anchors.
Of course, there are plenty of theories about how spatial anchors work. But from the developer's standpoint, once the devices are connected, one device shares its spatial anchor with the other devices. While these anchors can be large at times, once they are loaded onto the other devices, it just works.
All of these technologies are variations of a tech that comes to us from the robotics community called SLAM, or simultaneous localization and mapping. Using a combination of computer vision, from the device's built-in cameras, and pose data from the collections of sensors (like the inertial measurement unit), the AR device is able to accurately track its own pose in a space. Then it can transmit an absolute pose to other devices.
What we can put together in the documentation for the ML1 is that the device obviously has the basic capabilities needed for SLAM. We know it contains a big selection of sensors. It also uses what the company calls Image Tracking, which would be the basis of the headset's computer vision.
Magic Leap also has what it calls Meshing, which is the recreation of the world around the user in 3D mesh data. And while 3D mesh data can be computationally a bit much for SLAM (though there are cases that try it), it seems as though the 3D data can be used as a reference point for sharing.
In Magic Leap's description of persistent objects, the company does seem to imply that it is using a combination of computer vision and its Meshing technology.
Our visual perception and room-mapping technology builds a digital replica of your physical environment—detecting and storing the precise location of walls, surfaces and other physical objects. Lightfield objects stay where you put them, just as they would in real life. Place a virtual TV on the wall over your fireplace and when you return later, the TV will be right where you left it.
So while that somewhat answers questions tied to the persistence of objects for the solo Magic Leap One user, there is still the question of the shared experience.
If you read through the Lumin Runtime documentation, one could easily infer that the runtime layer handles sharing connected devices automatically. This would imply that the company might have a system in place to handle positioning, both relative and absolute, automatically as well.
Of course, in the end, many of the unanswered questions will go on being unanswered even after the release of the ML1. But if the Magic Leap One: Creator Edition does what the documentation implies, by handling not only the sharing process, but the persistence between devices (and automatically, to boot), you will have a big group of very happy developers.