WLT documentation has moved.

We are publishing both conceptual docs and API references on docs.microsoft.com. For conceptual docs, please visit our new landing page. For API references, please visit the Core WLT section of the dot net API explorer and related pages. Existing content will remain here but will not be updated further.

Search Results for

    Show / Hide Table of Contents

    Coordinate Spaces in World Locking Tools for Unity

    The World Locking Tools for Unity (WLT) ultimately provide a stable world-locked coordinate system, with configurable mapping to the physical world.

    This transformation from the shifting, non-persistent, and arbitrary native Unity global coordinate space, to the world-locked space happens in steps. Each intermediate coordinate space has a name.

    To some degree, all names are somewhat arbitrary. These are the names of the intermediate spaces as used in the WLT documentation and code.

    Spongy Space - The Unity global coordinate space you would get without WLT. A stationary object in Spongy Space (one whose coordinates are unchanging) will drift relative to the physical world.

    Play Space - A position/rotation transformation of Spongy Space, it can be used to implement features like teleport.

    Locked Space - The world-locked space as computed by the FrozenWorld Engine and implemented by WLT. A stationary object in Locked Space will remain fixed relative to features in the physical world. However, the numeric values of its coordinates are arbitrary.

    Pinned Space - A transformation of Locked Space to give coordinates a desired mapping to the physical world. An object with position (X,Y,Z) will appear at a known predetermined position relative to physical world features.

    Frozen Space - A position/rotation transformation of Pinned Space, allowing the application to apply an arbitrary transform to the camera hierarchy.

    As a convenience, the WorldLockingManager supplies transformations between all of these spaces. For example, the most useful of these is FrozenFromSpongy, a Pose which transforms from Spongy Space to Frozen Space. This is useful when converting coordinates returned by native APIs, which have no notion of WLT and so operate in Spongy Space, into Frozen Space.

    Note that when using MRTK, no such translations are needed. Its coordinate space is already Frozen Space.

    Other conversions between the various spaces are available on the WorldLockingManager, but are not generally needed.

    See also

    • A primer on Unity coordinate spaces (without WLT) as relates to AR/MR.
    • Explanation of the SessionOrigin
    • Improve this Doc
    In This Article
    Back to top Generated by DocFX