Skip to content
This repository was archived by the owner on Nov 16, 2024. It is now read-only.

Commit 077d01c

Browse files
Persistence under AR Foundation (#193)
* Persisting local anchors under ARFoundation via the MR OpenXR Plugin extensions. * Move SpongyAnchor.IsSaved to base class, to allow all implementations to avoid redundant saves. * More define protection when MR OpenXR installed, but not used (e.g. building for Android). * Reposition define. * Up version in UPM creation assets to v1.4.2. * Fix profile broken with update to latest MRTK. * Up WLT version to v1.4.2. * Update PinTestSofa to use fixed profile.
1 parent 6ce01cd commit 077d01c

30 files changed

+594
-122
lines changed

Assets/WorldLocking.ASA.Examples/CustomProfiles/HandMeshOff InputSystemProfile.asset

Lines changed: 0 additions & 57 deletions
This file was deleted.

Assets/WorldLocking.ASA.Examples/CustomProfiles/HandMeshOff HandTrackingProfile.asset renamed to Assets/WorldLocking.ASA.Examples/CustomProfiles/InvisibleHands HandTrackingProfile.asset

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,16 @@ MonoBehaviour:
1010
m_Enabled: 1
1111
m_EditorHideFlags: 0
1212
m_Script: {fileID: 11500000, guid: 8275efdbe76bdff49a97a8e82fba118d, type: 3}
13-
m_Name: HandMeshOff HandTrackingProfile
13+
m_Name: InvisibleHands HandTrackingProfile
1414
m_EditorClassIdentifier:
1515
isCustomProfile: 1
16-
jointPrefab: {fileID: 1955475817299902, guid: 6a3f88d2571cd234a86d95ee5856b9ec, type: 3}
17-
palmPrefab: {fileID: 6797406804172968804, guid: 750bdc3344567a447960aae3eda2b462, type: 3}
18-
fingertipPrefab: {fileID: 7094064642998883381, guid: b37dde41a983d664c8a09a91313733e7, type: 3}
19-
handMeshPrefab: {fileID: 1887883006053652, guid: a86f479797fea8f4189f924b3b6ad979, type: 3}
16+
jointPrefab: {fileID: 1955475817299902, guid: 6a3f88d2571cd234a86d95ee5856b9ec,
17+
type: 3}
18+
palmPrefab: {fileID: 6797406804172968804, guid: 750bdc3344567a447960aae3eda2b462,
19+
type: 3}
20+
fingertipPrefab: {fileID: 7094064642998883381, guid: b37dde41a983d664c8a09a91313733e7,
21+
type: 3}
22+
handMeshPrefab: {fileID: 1887883006053652, guid: a86f479797fea8f4189f924b3b6ad979,
23+
type: 3}
2024
handMeshVisualizationModes: 0
21-
handJointVisualizationModes: 0
25+
handJointVisualizationModes: -1

Assets/WorldLocking.ASA.Examples/CustomProfiles/HandMeshOff HandTrackingProfile.asset.meta renamed to Assets/WorldLocking.ASA.Examples/CustomProfiles/InvisibleHands HandTrackingProfile.asset.meta

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
%YAML 1.1
2+
%TAG !u! tag:unity3d.com,2011:
3+
--- !u!114 &11400000
4+
MonoBehaviour:
5+
m_ObjectHideFlags: 0
6+
m_CorrespondingSourceObject: {fileID: 0}
7+
m_PrefabInstance: {fileID: 0}
8+
m_PrefabAsset: {fileID: 0}
9+
m_GameObject: {fileID: 0}
10+
m_Enabled: 1
11+
m_EditorHideFlags: 0
12+
m_Script: {fileID: 11500000, guid: b71cb900fa9dec5488df2deb180db58f, type: 3}
13+
m_Name: InvisibleHands InputSystemProfile
14+
m_EditorClassIdentifier:
15+
isCustomProfile: 1
16+
dataProviderConfigurations:
17+
- componentType:
18+
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.WindowsMixedRealityDeviceManager,
19+
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
20+
componentName: Windows Mixed Reality Device Manager
21+
priority: 0
22+
runtimePlatform: 8
23+
deviceManagerProfile: {fileID: 0}
24+
- componentType:
25+
reference: Microsoft.MixedReality.Toolkit.OpenVR.Input.OpenVRDeviceManager,
26+
Microsoft.MixedReality.Toolkit.Providers.OpenVR
27+
componentName: OpenVR Device Manager
28+
priority: 0
29+
runtimePlatform: 7
30+
deviceManagerProfile: {fileID: 0}
31+
- componentType:
32+
reference: Microsoft.MixedReality.Toolkit.Input.UnityInput.UnityJoystickManager,
33+
Microsoft.MixedReality.Toolkit
34+
componentName: Unity Joystick Manager
35+
priority: 0
36+
runtimePlatform: -1
37+
deviceManagerProfile: {fileID: 0}
38+
- componentType:
39+
reference: Microsoft.MixedReality.Toolkit.Input.UnityInput.UnityTouchDeviceManager,
40+
Microsoft.MixedReality.Toolkit
41+
componentName: Unity Touch Device Manager
42+
priority: 0
43+
runtimePlatform: -1
44+
deviceManagerProfile: {fileID: 0}
45+
- componentType:
46+
reference: Microsoft.MixedReality.Toolkit.Windows.Input.WindowsSpeechInputProvider,
47+
Microsoft.MixedReality.Toolkit.Providers.WindowsVoiceInput
48+
componentName: Windows Speech Input
49+
priority: 0
50+
runtimePlatform: 25
51+
deviceManagerProfile: {fileID: 0}
52+
- componentType:
53+
reference: Microsoft.MixedReality.Toolkit.Windows.Input.WindowsDictationInputProvider,
54+
Microsoft.MixedReality.Toolkit.Providers.WindowsVoiceInput
55+
componentName: Windows Dictation Input
56+
priority: 0
57+
runtimePlatform: 25
58+
deviceManagerProfile: {fileID: 0}
59+
- componentType:
60+
reference: Microsoft.MixedReality.Toolkit.Input.HandJointService, Microsoft.MixedReality.Toolkit
61+
componentName: Hand Joint Service
62+
priority: 0
63+
runtimePlatform: -1
64+
deviceManagerProfile: {fileID: 0}
65+
- componentType:
66+
reference: Microsoft.MixedReality.Toolkit.Input.InputSimulationService, Microsoft.MixedReality.Toolkit.Services.InputSimulation
67+
componentName: Input Simulation Service
68+
priority: 0
69+
runtimePlatform: 208
70+
deviceManagerProfile: {fileID: 11400000, guid: 41478039094d47641bf4e09c20e61a5a,
71+
type: 2}
72+
- componentType:
73+
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.WindowsMixedRealityEyeGazeDataProvider,
74+
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
75+
componentName: Windows Mixed Reality Eye Gaze Provider
76+
priority: 0
77+
runtimePlatform: 8
78+
deviceManagerProfile: {fileID: 11400000, guid: 2d87dd11b18f700449c9dab320d19b99,
79+
type: 2}
80+
- componentType:
81+
reference: Microsoft.MixedReality.Toolkit.Input.InputRecordingService, Microsoft.MixedReality.Toolkit.Services.InputAnimation
82+
componentName: Input Recording Service
83+
priority: 0
84+
runtimePlatform: -1
85+
deviceManagerProfile: {fileID: 11400000, guid: d0f5a7f6d1f9f0b4cb6eb35c797a0f04,
86+
type: 2}
87+
- componentType:
88+
reference: Microsoft.MixedReality.Toolkit.Input.InputPlaybackService, Microsoft.MixedReality.Toolkit.Services.InputSimulation
89+
componentName: Input Playback Service
90+
priority: 0
91+
runtimePlatform: 208
92+
deviceManagerProfile: {fileID: 0}
93+
- componentType:
94+
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.WindowsMixedRealityDeviceManager,
95+
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
96+
componentName: XR SDK Windows Mixed Reality Device Manager
97+
priority: 0
98+
runtimePlatform: 9
99+
deviceManagerProfile: {fileID: 0}
100+
- componentType:
101+
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.WindowsMixedRealityEyeGazeDataProvider,
102+
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
103+
componentName: XRSDK Windows Mixed Reality Eye Gaze Provider
104+
priority: 0
105+
runtimePlatform: 8
106+
deviceManagerProfile: {fileID: 11400000, guid: 2d87dd11b18f700449c9dab320d19b99,
107+
type: 2}
108+
- componentType:
109+
reference: Microsoft.MixedReality.Toolkit.XRSDK.OpenXR.OpenXRDeviceManager,
110+
Microsoft.MixedReality.Toolkit.Providers.OpenXR
111+
componentName: OpenXR XRSDK Device Manager
112+
priority: 0
113+
runtimePlatform: -1
114+
deviceManagerProfile: {fileID: 0}
115+
- componentType:
116+
reference: Microsoft.MixedReality.Toolkit.XRSDK.OpenXR.OpenXREyeGazeDataProvider,
117+
Microsoft.MixedReality.Toolkit.Providers.OpenXR
118+
componentName: OpenXR XRSDK Eye Gaze Provider
119+
priority: 0
120+
runtimePlatform: -1
121+
deviceManagerProfile: {fileID: 11400000, guid: 2d87dd11b18f700449c9dab320d19b99,
122+
type: 2}
123+
- componentType:
124+
reference: Microsoft.MixedReality.Toolkit.XRSDK.Oculus.Input.OculusXRSDKDeviceManager,
125+
Microsoft.MixedReality.Toolkit.Providers.XRSDK.Oculus
126+
componentName: XR SDK Oculus Device Manager
127+
priority: 0
128+
runtimePlatform: 33
129+
deviceManagerProfile: {fileID: 11400000, guid: 8f48cb9c26fb518499c65c9f9e8bb4ed,
130+
type: 2}
131+
focusProviderType:
132+
reference: Microsoft.MixedReality.Toolkit.Input.FocusProvider, Microsoft.MixedReality.Toolkit.Services.InputSystem
133+
raycastProviderType:
134+
reference: Microsoft.MixedReality.Toolkit.Input.DefaultRaycastProvider, Microsoft.MixedReality.Toolkit.Services.InputSystem
135+
focusQueryBufferSize: 128
136+
shouldUseGraphicsRaycast: 1
137+
focusIndividualCompoundCollider: 0
138+
inputActionsProfile: {fileID: 11400000, guid: 723eb97b02944311b92861f473eee53e,
139+
type: 2}
140+
inputActionRulesProfile: {fileID: 11400000, guid: 03945385d89102f41855bc8f5116b199,
141+
type: 2}
142+
pointerProfile: {fileID: 11400000, guid: 48aa63a9725047b28d4137fd0834bc31, type: 2}
143+
gesturesProfile: {fileID: 11400000, guid: bd7829a9b29409045a745b5a18299291, type: 2}
144+
speechCommandsProfile: {fileID: 11400000, guid: e8d0393e66374dae9646851a57dc6bc1,
145+
type: 2}
146+
enableControllerMapping: 1
147+
controllerMappingProfile: {fileID: 11400000, guid: 39ded1fd0711a0c448413d0e1ec4f7f3,
148+
type: 2}
149+
controllerVisualizationProfile: {fileID: 11400000, guid: 345c06fdf3732db46b96299bd3cba653,
150+
type: 2}
151+
handTrackingProfile: {fileID: 11400000, guid: 108ef89bc6823c54cb9c696f03eb6a40,
152+
type: 2}

Assets/WorldLocking.ASA.Examples/CustomProfiles/HandMeshOff InputSystemProfile.asset.meta renamed to Assets/WorldLocking.ASA.Examples/CustomProfiles/InvisibleHands InputSystemProfile.asset.meta

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Assets/WorldLocking.ASA.Examples/CustomProfiles/Xample XRSDK ToolkitConfigurationProfile.asset

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,25 @@ MonoBehaviour:
1313
m_Name: Xample XRSDK ToolkitConfigurationProfile
1414
m_EditorClassIdentifier:
1515
isCustomProfile: 1
16-
experienceSettingsProfile: {fileID: 11400000, guid: 1ccbb3b1d759d6a49b4161a958329d9d, type: 2}
16+
experienceSettingsProfile: {fileID: 11400000, guid: 1ccbb3b1d759d6a49b4161a958329d9d,
17+
type: 2}
1718
targetExperienceScale: 3
1819
enableCameraSystem: 1
1920
cameraProfile: {fileID: 11400000, guid: 6a6ea8e8cca71344ba773e4317537580, type: 2}
2021
cameraSystemType:
2122
reference: Microsoft.MixedReality.Toolkit.CameraSystem.MixedRealityCameraSystem,
2223
Microsoft.MixedReality.Toolkit.Services.CameraSystem
2324
enableInputSystem: 1
24-
inputSystemProfile: {fileID: 11400000, guid: 73e9824c9bfa4d8469e4408934756415, type: 2}
25+
inputSystemProfile: {fileID: 11400000, guid: c3bf7d2fd3edc77448885554a5581f80, type: 2}
2526
inputSystemType:
2627
reference: Microsoft.MixedReality.Toolkit.Input.MixedRealityInputSystem, Microsoft.MixedReality.Toolkit.Services.InputSystem
2728
enableBoundarySystem: 1
2829
boundarySystemType:
2930
reference: Microsoft.MixedReality.Toolkit.XRSDK.XRSDKBoundarySystem, Microsoft.MixedReality.Toolkit.Providers.XRSDK
3031
xrsdkBoundarySystemType:
3132
reference:
32-
boundaryVisualizationProfile: {fileID: 11400000, guid: 6d28cce596b44bd3897ca86f8b24e076, type: 2}
33+
boundaryVisualizationProfile: {fileID: 11400000, guid: 6d28cce596b44bd3897ca86f8b24e076,
34+
type: 2}
3335
enableTeleportSystem: 1
3436
teleportSystemType:
3537
reference: Microsoft.MixedReality.Toolkit.Teleport.MixedRealityTeleportSystem,
@@ -38,8 +40,10 @@ MonoBehaviour:
3840
spatialAwarenessSystemType:
3941
reference: Microsoft.MixedReality.Toolkit.SpatialAwareness.MixedRealitySpatialAwarenessSystem,
4042
Microsoft.MixedReality.Toolkit.Services.SpatialAwarenessSystem
41-
spatialAwarenessSystemProfile: {fileID: 11400000, guid: 2f8932c6c78438e4d9bff23af5c710be, type: 2}
42-
diagnosticsSystemProfile: {fileID: 11400000, guid: 478436bd1083882479a52d067e98e537, type: 2}
43+
spatialAwarenessSystemProfile: {fileID: 11400000, guid: 2f8932c6c78438e4d9bff23af5c710be,
44+
type: 2}
45+
diagnosticsSystemProfile: {fileID: 11400000, guid: 478436bd1083882479a52d067e98e537,
46+
type: 2}
4347
enableDiagnosticsSystem: 1
4448
diagnosticsSystemType:
4549
reference: Microsoft.MixedReality.Toolkit.Diagnostics.MixedRealityDiagnosticsSystem,
@@ -49,7 +53,8 @@ MonoBehaviour:
4953
sceneSystemType:
5054
reference: Microsoft.MixedReality.Toolkit.SceneSystem.MixedRealitySceneSystem,
5155
Microsoft.MixedReality.Toolkit.Services.SceneSystem
52-
registeredServiceProvidersProfile: {fileID: 11400000, guid: efbaf6ea540c69f4fb75415a5d145a53, type: 2}
56+
registeredServiceProvidersProfile: {fileID: 11400000, guid: efbaf6ea540c69f4fb75415a5d145a53,
57+
type: 2}
5358
useServiceInspectors: 0
5459
renderDepthBuffer: 0
5560
enableVerboseLogging: 0

Assets/WorldLocking.ASA.Examples/Scenes/PinTestSofa.unity

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ RenderSettings:
3838
m_ReflectionIntensity: 1
3939
m_CustomReflection: {fileID: 0}
4040
m_Sun: {fileID: 705507994}
41-
m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1}
41+
m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1}
4242
m_UseRadianceAmbientProbe: 0
4343
--- !u!157 &3
4444
LightmapSettings:
@@ -1067,8 +1067,8 @@ MonoBehaviour:
10671067
Enabled: 1
10681068
AutoMerge: 1
10691069
AutoRefreeze: 1
1070-
AutoLoad: 0
1071-
AutoSave: 0
1070+
AutoLoad: 1
1071+
AutoSave: 1
10721072
linkageSettings:
10731073
useExisting: 0
10741074
AdjustmentFrame: {fileID: 118694855}

Assets/WorldLocking.ASA.Examples/Scripts/ActionPublish.cs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,18 @@ private void DisplayStatus()
9696
status = binder.PublisherStatus;
9797
}
9898
statusLine.faceColor = status.readiness == PublisherReadiness.Ready ? Color.white : Color.red;
99-
statusLine.text = $"Status: {status.readiness.ToString()}, Create={status.recommendedForCreate.ToString("0.00")}, {status.readyForCreate.ToString("0.00")}";
99+
string statusText = $"Status: {status.readiness}";
100+
if (status.readiness == PublisherReadiness.NotReadyToCreate)
101+
{
102+
statusText += $" Create={status.recommendedForCreate.ToString("0.00")}, {status.readyForCreate.ToString("0.00")}";
103+
}
104+
string wltStatus = WorldLocking.Core.WorldLockingManager.GetInstance().ErrorStatus;
105+
if (string.IsNullOrEmpty(wltStatus))
106+
{
107+
wltStatus = "Tracking";
108+
}
109+
statusText += $" {wltStatus}";
110+
statusLine.text = statusText;
100111
}
101112
}
102113

0 commit comments

Comments
 (0)