Hey all,
I'm fairly new to the MagicLeap and just wanted to ask if I'm fundamentally misunderstanding something.
What I'm trying to do is to shift the user's position within Unity so that Unity's origin equals the localized space's origin if the device is localized into any space.
As a first step I'm just spawning a simple object at the SpaceOrigin coordinates in Unity. Since Unity's origin is the same as the device's origin, I thought this would lead to the object being positioned at the same point in Actual Space regardless of where I boot the device. Sadly, this is not the case and I think I'm not "translating" the space coordinates correctly into Unity coordinates.
If anyone can point me to my error here, I'd be immensely greateful. Otherwise there's a few basic assumptions on SpaceOrigin that I'd like confirmation on:
-
Is the SpaceOrigin persistent - in Actual Space - for each Space?
-
Where is the SpaceOrigin of a space located? The geometric middle of the Space? The position where the scan was initialized? Somewhere else?
-
The SpaceOrigin information is stored as "relative to the world origin". How does this relation look like? Are the values calculated within the space's coordinate system or within the world's coordinate system?
-
Is there a difference between ML's coordinate system and Unity's? Unity uses (x,y,z) to be (right,up,forward). Is it the same for Magic Leap internal data?
Thanks in advance.