• Home
  • Guides
  • API Documentation
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.

  • API Documentation
  • Reference
  • Microsoft.MixedReality.WorldLocking.Core
  • WorldLockingManager
Search Results for

    Show / Hide Table of Contents
    • Reference
      • Microsoft.MixedReality.WorldLocking.ASA
        • IBinder
        • IBindingOracle
        • ILocalPeg
        • IPublisher
        • LocalPegAndProperties
        • PublisherASA
        • PublisherReadiness
        • ReadinessStatus
        • SpacePinASA
        • SpacePinASA.KeyValPair
        • SpacePinBinder
        • SpacePinBinderFile
        • SpacePinCloudBinding
      • Microsoft.MixedReality.WorldLocking.ASA.Examples
        • ActionCube
        • ActionPublish
        • PlatformMenuSelector
        • ScreenSpacer
        • SpacePinASAManipulation
        • Startup
      • Microsoft.MixedReality.WorldLocking.Core
        • AdjustLocationDelegate
        • AdjustStateDelegate
        • AlignmentManager
        • AlignSubtree
        • AnchorManager
        • AnchorManager.SpongyAnchorWithId
        • AnchorManagerARCore
        • AnchorManagerNull
        • AnchorManagerWSA
        • AnchorSettings
        • AnchorSettings.AnchorSubsystem
        • AttachmentPoint
        • AttachmentPointStateType
        • Diagnostics
        • Diagnostics.Record
        • DiagnosticsSettings
        • Fragment
        • HeadPoseTrackerCamera
        • HeadPoseTrackerXR
        • IAlignmentManager
        • IAnchorManager
        • IAttachmentPoint
        • IAttachmentPointManager
        • IFragmentManager
        • IHeadPoseTracker
        • IOrientable
        • IOrienter
        • LinkageSettings
        • ManagerSettings
        • Orienter
        • Orienter.WeightedRotation
        • OrienterThreeBody
        • PoseExtensions
        • PostAlignmentLoadedDelegate
        • RefitNotificationDelegate
        • ResourceMirror
        • ResourceMirror.CompareToResource<ItemType, ResourceType>
        • ResourceMirror.CreateResource<ItemType, ResourceType>
        • ResourceMirror.DestroyResource<ResourceType>
        • ResourceMirror.UpdateResource<ItemType, ResourceType>
        • SharedDiagnosticsSettings
        • SharedManagerSettings
        • SpacePin
        • SpacePin.ModelPositionSourceEnum
        • SpacePinOrientable
        • SpongyAnchor
        • SpongyAnchorARCore
        • SpongyAnchorARF
        • SpongyAnchorNull
        • SpongyAnchorWSA
        • SpongyAnchorXR
        • TransformExtensions
        • WorldLockingContext
        • WorldLockingManager
      • Microsoft.MixedReality.WorldLocking.Core.ResourceMirrorHelper
        • IdPair<IdType, T>
      • Microsoft.MixedReality.WorldLocking.Core.Triangulator
        • Interpolant
        • ITriangulator
        • SimpleTriangulator
      • Microsoft.MixedReality.WorldLocking.Examples
        • AlignmentControl
        • CircleCam
        • DashboardCommand
        • DashboardUI
        • FallOut
        • ManipulationEndedDelegate
        • ManipulationStartedDelegate
        • PhysicsBeamSample
        • PinManipulator
        • RayPins
        • SpacePinManipulation
        • SpacePinOrientableManipulation
      • Microsoft.MixedReality.WorldLocking.Tools
        • AdjusterBase
        • AdjusterFixed
        • AdjusterMoving
        • AnchorGraphVisual
        • ConnectingLine
        • FrameVisual
        • FrozenAnchorVisual
        • FrozenSpatialMapping
        • FrozenSpatialMapping.QualityType
        • FrozenTapToAdd
        • SimpleConsole
        • SimpleSprite
        • SpacePinMeshVisualizer
        • SpacePinPercentageVisualizer
        • SpongyAnchorVisual
        • StatusToText
        • ToggleWorldAnchor
        • WorldAnchorAdapter
        • WorldLockingSetup

    Class WorldLockingManager

    Ultimate manager of World Locking. WorldLockingManager supplies access to the sub-managers, IAnchorManager, IFragmentManager, and IAttachmentPointManager.

    Inheritance
    Object
    WorldLockingManager
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Microsoft.MixedReality.WorldLocking.Core
    Assembly: cs.temp.dll.dll
    Syntax
    public class WorldLockingManager

    Fields

    Plugin

    Direct interface to the plugin. It is not generally necessary or desired to directly manipulate the plugin, but may be useful for manual override of some plugin inputs, outputs, or controls.

    Declaration
    public readonly IPlugin Plugin
    Field Value
    Type Description
    IPlugin

    Properties

    AdjustmentFrame

    The transform at which to apply the camera adjustment. This can't be the camera node, as its transform is overwritten every frame with head pose data. But the camera should be an attached descendant of this node.

    Declaration
    public Transform AdjustmentFrame { get; set; }
    Property Value
    Type Description
    Transform

    AlignmentManager

    Declaration
    public IAlignmentManager AlignmentManager { get; }
    Property Value
    Type Description
    IAlignmentManager

    AnchorManager

    Interface to the Anchor Manager.

    Declaration
    public IAnchorManager AnchorManager { get; }
    Property Value
    Type Description
    IAnchorManager

    AnchorSettings

    Access to anchor management settings.

    Declaration
    public AnchorSettings AnchorSettings { get; set; }
    Property Value
    Type Description
    AnchorSettings
    Remarks

    Use ResetAnchorManager() to change the type of the anchor manager after startup, or just rebuild it from scratch.

    ApplyAdjustment

    Apply the computed adjustment via the AdjustmentFrame transform.

    Declaration
    public bool ApplyAdjustment { get; }
    Property Value
    Type Description
    Boolean
    Remarks

    If ApplyAdjustment is false, then WLT does the same computations, but it is up to the application to apply the computed transforms correctly, either in the camera hierarchy, or elsewhere in the scene hierarchy.

    AttachmentPointManager

    Interface to the attachment point manager. Use for creating and manipulating attachment points.

    Declaration
    public IAttachmentPointManager AttachmentPointManager { get; }
    Property Value
    Type Description
    IAttachmentPointManager

    AutoLoad

    Automatically load the WorldLocking state from disk at startup.

    Declaration
    public bool AutoLoad { get; }
    Property Value
    Type Description
    Boolean

    AutoMerge

    Automatically trigger a fragment merge whenever the FrozenWorld engine indicates that one would be appropriate.

    Declaration
    public bool AutoMerge { get; }
    Property Value
    Type Description
    Boolean

    AutoRefreeze

    Automatically trigger a refreeze whenever the FrozenWorld engine indicates that one would be appropriate.

    Declaration
    public bool AutoRefreeze { get; }
    Property Value
    Type Description
    Boolean

    AutoSave

    Periodically save the WorldLocking state to disk.

    Declaration
    public bool AutoSave { get; }
    Property Value
    Type Description
    Boolean

    CameraFromSpongy

    Inverse of the camera transform (camera from parent).

    Declaration
    public Pose CameraFromSpongy { get; }
    Property Value
    Type Description
    Pose

    CameraParent

    The camera parent node defines the "spongy frame of reference". All raw head based data, such as the spatial mapping, gesture events, and XR head pose data, are relative to this transform.

    Declaration
    public Transform CameraParent { get; set; }
    Property Value
    Type Description
    Transform

    DiagnosticsSettings

    Get a copy of the shared diagnostics configuration settings, or set the shared settings to a copy of the input.

    Declaration
    public DiagnosticsSettings DiagnosticsSettings { get; set; }
    Property Value
    Type Description
    DiagnosticsSettings

    Enabled

    Whether the system is currently active and stabilizing space.

    Declaration
    public bool Enabled { get; }
    Property Value
    Type Description
    Boolean

    ErrorStatus

    The current error status of the WorldLockingManager

    Declaration
    public string ErrorStatus { get; }
    Property Value
    Type Description
    String

    FragmentManager

    Interface to the fragment manager.

    Declaration
    public IFragmentManager FragmentManager { get; }
    Property Value
    Type Description
    IFragmentManager

    FrozenFromLocked

    Declaration
    public Pose FrozenFromLocked { get; }
    Property Value
    Type Description
    Pose

    FrozenFromPinned

    Any application applied transform above the adjustment node.

    Declaration
    public Pose FrozenFromPinned { get; }
    Property Value
    Type Description
    Pose

    FrozenFromSpongy

    Transform from spongy space to frozen space. Spongy space is that native to XR interfaces. Frozen is Unity's global coordinate space. Transform includes the WorldLocking adjustment to the camera, as well as any other transforms applied to the camera (e.g. teleport).

    Declaration
    public Pose FrozenFromSpongy { get; }
    Property Value
    Type Description
    Pose

    FrozenWorldFileName

    Filename at which to Save subsequent FrozenWorldEngine state to, and from which to Load it.

    Declaration
    public string FrozenWorldFileName { get; set; }
    Property Value
    Type Description
    String
    Remarks

    Some error checking for common mistakes is made, but some common sense should prevail. Use valid, normal filenames. A subpath may be introduced, but the entire path must be relative. Some examples: Good: 'myfile.myext', 'mypath/myfile.myext' Bad: null, '/myfile.myext' The actual final full path name used will be off of Application.persistentDataPath, which is platform dependent.

    HasPendingIO

    Whether the manager is currently asynchronously loading or saving state.

    Declaration
    public bool HasPendingIO { get; }
    Property Value
    Type Description
    Boolean
    Remarks

    Any attempt to manually initiate a Save or Load while HasPendingIO is true will quietly fail.

    LinkageSettings

    Access to linkage settings.

    Declaration
    public LinkageSettings LinkageSettings { get; set; }
    Property Value
    Type Description
    LinkageSettings

    LockedFromFrozen

    Declaration
    public Pose LockedFromFrozen { get; }
    Property Value
    Type Description
    Pose

    LockedFromPinned

    From pinned space back to the world-locked space.

    Declaration
    public Pose LockedFromPinned { get; }
    Property Value
    Type Description
    Pose

    LockedFromPlayspace

    Adjustment transform to world-lock the coordinate space.

    Declaration
    public Pose LockedFromPlayspace { get; set; }
    Property Value
    Type Description
    Pose

    LockedFromSpongy

    Declaration
    public Pose LockedFromSpongy { get; }
    Property Value
    Type Description
    Pose

    MergeIndicated

    Indicator for the FrozenWorld engine internal heuristics of whether a merge should be performed

    Declaration
    public bool MergeIndicated { get; }
    Property Value
    Type Description
    Boolean

    NoPitchAndRoll

    Zero out pitch and roll from FrozenWorldEngine's computed correction.

    Declaration
    public bool NoPitchAndRoll { get; }
    Property Value
    Type Description
    Boolean
    Remarks

    This does not affect pitch and roll from the AlignmentManager (SpacePins).

    PinnedFromFrozen

    Transform from application's frozen space back to space computed by WorldLocking.

    Declaration
    public Pose PinnedFromFrozen { get; }
    Property Value
    Type Description
    Pose

    PinnedFromLocked

    Transform from the world locked space computed by WorldLocking to the space pinned in place.

    Declaration
    public Pose PinnedFromLocked { get; set; }
    Property Value
    Type Description
    Pose

    PlayspaceFromLocked

    Inverse of adjustment transform to world-lock the coordinate space.

    Declaration
    public Pose PlayspaceFromLocked { get; }
    Property Value
    Type Description
    Pose

    PlayspaceFromSpongy

    Transform applied by (optional) camera parent node (e.g. for teleport).

    Declaration
    public Pose PlayspaceFromSpongy { get; }
    Property Value
    Type Description
    Pose

    RefreezeIndicated

    Indicator for the FrozenWorld engine internal heuristics of whether a refreeze should be performed

    Declaration
    public bool RefreezeIndicated { get; }
    Property Value
    Type Description
    Boolean

    Settings

    The configuration settings may only be set as a block. Get returns a snapshot of current settings, and set copies entire block.

    Declaration
    public ManagerSettings Settings { get; set; }
    Property Value
    Type Description
    ManagerSettings
    Remarks

    To change an individual field in the settings, retrieve the entire settings block, change the desired field(s), then set the entire block. E.g. var settings = mgr.Settings; settings.AutoLoad = false; settings.AutoSave = true; mgr.Settings = settings;

    SpongyFromCamera

    The camera transform (parent from camera).

    Declaration
    public Pose SpongyFromCamera { get; set; }
    Property Value
    Type Description
    Pose

    SpongyFromFrozen

    Transform from frozen space to XR native spongy space, including other transforms accumulated in the camera's ancestors (e.g. teleport).

    Declaration
    public Pose SpongyFromFrozen { get; }
    Property Value
    Type Description
    Pose

    SpongyFromLocked

    Declaration
    public Pose SpongyFromLocked { get; }
    Property Value
    Type Description
    Pose

    SpongyFromPlayspace

    Inverse of transform applied by (optional) camera parent node (e.g. for teleport).

    Declaration
    public Pose SpongyFromPlayspace { get; }
    Property Value
    Type Description
    Pose

    Version

    The version of this release. This will be displayed in the WorldLockingContext component in the Unity Inspector, allowing quick visual verification of the version of World Locking Tools for Unity currently installed. It has no effect in code, but serves only as a label. A "_dev" suffix means it's the main branch under current development (between releases). When released, the _dev suffix is removed. For example, 1.5.9_dev is released as 1.5.9.

    Declaration
    public static string Version { get; }
    Property Value
    Type Description
    String

    Methods

    Dispose()

    Dispose of internals on shutdown.

    Declaration
    public void Dispose()

    Finalize()

    Dispose of internals on shutdown.

    Declaration
    protected void Finalize()

    GetInstance()

    Get the WorldLockingManager instance. This may be called at any time in program execution, but if called during load its settings may not have been loaded from a new scene yet.

    Declaration
    public static WorldLockingManager GetInstance()
    Returns
    Type Description
    WorldLockingManager

    The WorldLockingManager

    Load()

    Manually trigger a load operation for the WorldLocking state

    Declaration
    public void Load()

    Reset()

    Bring WorldLocking to a well-defined, empty state

    Declaration
    public void Reset()

    ResetAnchorManager()

    Perform any initialization only appropriate once. This is called after giving the caller a chance to change settings.

    Declaration
    public async void ResetAnchorManager()

    Save()

    Manually trigger a save operation for the WorldLocking state

    Declaration
    public void Save()

    SetContext(WorldLockingContext)

    Start using shared settings from given context.

    Declaration
    public void SetContext(WorldLockingContext context)
    Parameters
    Type Name Description
    WorldLockingContext context

    The context supplying the new shared settings.

    In This Article
    • Fields
      • Plugin
    • Properties
      • AdjustmentFrame
      • AlignmentManager
      • AnchorManager
      • AnchorSettings
      • ApplyAdjustment
      • AttachmentPointManager
      • AutoLoad
      • AutoMerge
      • AutoRefreeze
      • AutoSave
      • CameraFromSpongy
      • CameraParent
      • DiagnosticsSettings
      • Enabled
      • ErrorStatus
      • FragmentManager
      • FrozenFromLocked
      • FrozenFromPinned
      • FrozenFromSpongy
      • FrozenWorldFileName
      • HasPendingIO
      • LinkageSettings
      • LockedFromFrozen
      • LockedFromPinned
      • LockedFromPlayspace
      • LockedFromSpongy
      • MergeIndicated
      • NoPitchAndRoll
      • PinnedFromFrozen
      • PinnedFromLocked
      • PlayspaceFromLocked
      • PlayspaceFromSpongy
      • RefreezeIndicated
      • Settings
      • SpongyFromCamera
      • SpongyFromFrozen
      • SpongyFromLocked
      • SpongyFromPlayspace
      • Version
    • Methods
      • Dispose()
      • Finalize()
      • GetInstance()
      • Load()
      • Reset()
      • ResetAnchorManager()
      • Save()
      • SetContext(WorldLockingContext)
    Back to top Generated by DocFX