Skip to content

Commit eb753dc

Browse files
authored
Merge pull request #9710 from keveleigh/update-controller-viz-profile
Update controller viz profile to support "both"
2 parents 4d19ed3 + 3ba262c commit eb753dc

File tree

8 files changed

+25
-94
lines changed

8 files changed

+25
-94
lines changed

Assets/MRTK/Core/Definitions/Devices/MixedRealityControllerVisualizationProfile.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ public GameObject GetControllerModelOverride(Type controllerType, Handedness han
186186
public SystemType GetControllerVisualizationTypeOverride(Type controllerType, Handedness hand)
187187
{
188188
MixedRealityControllerVisualizationSetting? setting = GetControllerVisualizationDefinition(controllerType, hand);
189-
return setting.HasValue ? setting.Value.ControllerVisualizationType : null;
189+
return setting.HasValue ? setting.Value.ControllerVisualizationType : DefaultControllerVisualizationType;
190190
}
191191

192192
/// <summary>

Assets/MRTK/Core/Inspectors/Profiles/MixedRealityControllerVisualizationProfileInspector.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// Copyright (c) Microsoft Corporation.
2-
// Licensed under the MIT License.
2+
// Licensed under the MIT License.
33

44
using Microsoft.MixedReality.Toolkit.Editor;
55
using Microsoft.MixedReality.Toolkit.Input.UnityInput;
@@ -20,6 +20,7 @@ public class MixedRealityControllerVisualizationProfileInspector : BaseMixedReal
2020
{
2121
new GUIContent("Left Hand"),
2222
new GUIContent("Right Hand"),
23+
new GUIContent("Both"),
2324
};
2425

2526
private SerializedProperty renderMotionControllers;
@@ -213,7 +214,7 @@ private void RenderControllerList(SerializedProperty controllerList)
213214

214215
using (new EditorGUILayout.HorizontalScope())
215216
{
216-
EditorGUILayout.LabelField($"{mixedRealityControllerMappingDescription.stringValue} {((Handedness)mixedRealityControllerHandedness.intValue).ToString().ToProperCase()} Hand", EditorStyles.boldLabel);
217+
EditorGUILayout.LabelField($"{mixedRealityControllerMappingDescription.stringValue} {((Handedness)mixedRealityControllerHandedness.intValue).ToString().ToProperCase()} Hand{(mixedRealityControllerHandedness.intValue == (int)(Handedness.Both) ? "s" : "")}", EditorStyles.boldLabel);
217218

218219
if (GUILayout.Button(ControllerMinusButtonContent, EditorStyles.miniButtonRight, GUILayout.Width(24f)))
219220
{
@@ -241,8 +242,8 @@ private void RenderControllerList(SerializedProperty controllerList)
241242

242243
var handednessValue = mixedRealityControllerHandedness.intValue - 1;
243244

244-
// Reset in case it was set to something other than left or right.
245-
if (handednessValue < 0 || handednessValue > 1) { handednessValue = 0; }
245+
// Reset in case it was set to something other than left, right, or both.
246+
if (handednessValue < 0 || handednessValue > 2) { handednessValue = 0; }
246247

247248
EditorGUI.BeginChangeCheck();
248249
handednessValue = EditorGUILayout.IntPopup(new GUIContent(mixedRealityControllerHandedness.displayName, mixedRealityControllerHandedness.tooltip), handednessValue, HandednessSelections, null);

Assets/MRTK/Core/Utilities/Editor/XRSettingsUtilities.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,9 +202,16 @@ private static IReadOnlyList<XRLoader> XRSDKLoadersOfCurrentBuildTarget
202202
{
203203
BuildTargetGroup currentBuildTarget = BuildPipeline.GetBuildTargetGroup(EditorUserBuildSettings.activeBuildTarget);
204204
XRGeneralSettings settingsOfCurrentTarget = XRGeneralSettingsPerBuildTarget.XRGeneralSettingsForBuildTarget(currentBuildTarget);
205+
if (settingsOfCurrentTarget != null && settingsOfCurrentTarget.AssignedSettings != null)
206+
{
205207
#pragma warning disable CS0618 // Suppressing the warning to support xr management plugin 3.x and 4.x
206-
return settingsOfCurrentTarget.AssignedSettings.loaders;
208+
return settingsOfCurrentTarget.AssignedSettings.loaders;
207209
#pragma warning restore CS0618
210+
}
211+
else
212+
{
213+
return System.Array.Empty<XRLoader>();
214+
}
208215
}
209216
}
210217
#endif // XR_MANAGEMENT_ENABLED

Assets/MRTK/SDK/Profiles/DefaultMixedRealityControllerVisualizationProfile.asset

Lines changed: 9 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,7 @@ MonoBehaviour:
3333
controllerType:
3434
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.WindowsMixedRealityController,
3535
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
36-
handedness: 1
37-
usePlatformModels: 1
38-
platformModelMaterial: {fileID: 0}
39-
overrideModel: {fileID: 0}
40-
controllerVisualizationType:
41-
reference: Microsoft.MixedReality.Toolkit.Input.WindowsMixedRealityControllerVisualizer,
42-
Microsoft.MixedReality.Toolkit.SDK
43-
- description: Windows Mixed Reality Controller
44-
controllerType:
45-
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.WindowsMixedRealityController,
46-
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
47-
handedness: 2
36+
handedness: 3
4837
usePlatformModels: 1
4938
platformModelMaterial: {fileID: 0}
5039
overrideModel: {fileID: 0}
@@ -55,18 +44,7 @@ MonoBehaviour:
5544
controllerType:
5645
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.HPMotionController,
5746
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
58-
handedness: 1
59-
usePlatformModels: 1
60-
platformModelMaterial: {fileID: 0}
61-
overrideModel: {fileID: 0}
62-
controllerVisualizationType:
63-
reference: Microsoft.MixedReality.Toolkit.Input.WindowsMixedRealityControllerVisualizer,
64-
Microsoft.MixedReality.Toolkit.SDK
65-
- description: HP Motion Controller
66-
controllerType:
67-
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.HPMotionController,
68-
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
69-
handedness: 2
47+
handedness: 3
7048
usePlatformModels: 1
7149
platformModelMaterial: {fileID: 0}
7250
overrideModel: {fileID: 0}
@@ -77,40 +55,18 @@ MonoBehaviour:
7755
controllerType:
7856
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.WindowsMixedRealityArticulatedHand,
7957
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
80-
handedness: 1
58+
handedness: 3
8159
usePlatformModels: 0
8260
platformModelMaterial: {fileID: 0}
8361
overrideModel: {fileID: 1227372834072826, guid: 378f91dbbff9e2343b27a467467750bf,
8462
type: 3}
8563
controllerVisualizationType:
8664
reference: Microsoft.MixedReality.Toolkit.Input.BaseHandVisualizer, Microsoft.MixedReality.Toolkit
87-
- description: Windows Mixed Reality Articulated Hand
88-
controllerType:
89-
reference: Microsoft.MixedReality.Toolkit.WindowsMixedReality.Input.WindowsMixedRealityArticulatedHand,
90-
Microsoft.MixedReality.Toolkit.Providers.WindowsMixedReality
91-
handedness: 2
92-
usePlatformModels: 0
93-
platformModelMaterial: {fileID: 0}
94-
overrideModel: {fileID: 1788309537287834, guid: 132c9402d5843aa4f94380840186fd41,
95-
type: 3}
96-
controllerVisualizationType:
97-
reference: Microsoft.MixedReality.Toolkit.Input.BaseHandVisualizer, Microsoft.MixedReality.Toolkit
9865
- description: Windows Mixed Reality XRSDK Motion Controller
9966
controllerType:
10067
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.WindowsMixedRealityXRSDKMotionController,
10168
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
102-
handedness: 1
103-
usePlatformModels: 1
104-
platformModelMaterial: {fileID: 0}
105-
overrideModel: {fileID: 0}
106-
controllerVisualizationType:
107-
reference: Microsoft.MixedReality.Toolkit.Input.WindowsMixedRealityControllerVisualizer,
108-
Microsoft.MixedReality.Toolkit.SDK
109-
- description: Windows Mixed Reality XRSDK Motion Controller
110-
controllerType:
111-
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.WindowsMixedRealityXRSDKMotionController,
112-
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
113-
handedness: 2
69+
handedness: 3
11470
usePlatformModels: 1
11571
platformModelMaterial: {fileID: 0}
11672
overrideModel: {fileID: 0}
@@ -121,65 +77,32 @@ MonoBehaviour:
12177
controllerType:
12278
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.HPMotionController,
12379
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
124-
handedness: 1
80+
handedness: 3
12581
usePlatformModels: 1
12682
platformModelMaterial: {fileID: 0}
12783
overrideModel: {fileID: 0}
12884
controllerVisualizationType:
12985
reference: Microsoft.MixedReality.Toolkit.Input.WindowsMixedRealityControllerVisualizer,
13086
Microsoft.MixedReality.Toolkit.SDK
131-
- description: HP Motion Controller
132-
controllerType:
133-
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.HPMotionController,
134-
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
135-
handedness: 2
136-
usePlatformModels: 1
137-
platformModelMaterial: {fileID: 0}
138-
overrideModel: {fileID: 0}
139-
controllerVisualizationType:
140-
reference: Microsoft.MixedReality.Toolkit.Input.WindowsMixedRealityControllerVisualizer,
141-
Microsoft.MixedReality.Toolkit.SDK
142-
- description: Windows Mixed Reality XRSDK Articulated Hand
143-
controllerType:
144-
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.WindowsMixedRealityXRSDKArticulatedHand,
145-
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
146-
handedness: 1
147-
usePlatformModels: 0
148-
platformModelMaterial: {fileID: 0}
149-
overrideModel: {fileID: 1788309537287834, guid: 132c9402d5843aa4f94380840186fd41,
150-
type: 3}
151-
controllerVisualizationType:
152-
reference: Microsoft.MixedReality.Toolkit.Input.BaseHandVisualizer, Microsoft.MixedReality.Toolkit
15387
- description: Windows Mixed Reality XRSDK Articulated Hand
15488
controllerType:
15589
reference: Microsoft.MixedReality.Toolkit.XRSDK.WindowsMixedReality.WindowsMixedRealityXRSDKArticulatedHand,
15690
Microsoft.MixedReality.Toolkit.Providers.XRSDK.WindowsMixedReality
157-
handedness: 2
91+
handedness: 3
15892
usePlatformModels: 0
15993
platformModelMaterial: {fileID: 0}
160-
overrideModel: {fileID: 1788309537287834, guid: 132c9402d5843aa4f94380840186fd41,
161-
type: 3}
162-
controllerVisualizationType:
163-
reference: Microsoft.MixedReality.Toolkit.Input.BaseHandVisualizer, Microsoft.MixedReality.Toolkit
164-
- description: Microsoft Articulated Hand
165-
controllerType:
166-
reference: Microsoft.MixedReality.Toolkit.XRSDK.OpenXR.MicrosoftArticulatedHand,
167-
Microsoft.MixedReality.Toolkit.Providers.OpenXR
168-
handedness: 1
169-
usePlatformModels: 0
170-
platformModelMaterial: {fileID: 0}
171-
overrideModel: {fileID: 1788309537287834, guid: 132c9402d5843aa4f94380840186fd41,
94+
overrideModel: {fileID: 1227372834072826, guid: 378f91dbbff9e2343b27a467467750bf,
17295
type: 3}
17396
controllerVisualizationType:
17497
reference: Microsoft.MixedReality.Toolkit.Input.BaseHandVisualizer, Microsoft.MixedReality.Toolkit
17598
- description: Microsoft Articulated Hand
17699
controllerType:
177100
reference: Microsoft.MixedReality.Toolkit.XRSDK.OpenXR.MicrosoftArticulatedHand,
178101
Microsoft.MixedReality.Toolkit.Providers.OpenXR
179-
handedness: 2
102+
handedness: 3
180103
usePlatformModels: 0
181104
platformModelMaterial: {fileID: 0}
182-
overrideModel: {fileID: 1788309537287834, guid: 132c9402d5843aa4f94380840186fd41,
105+
overrideModel: {fileID: 1227372834072826, guid: 378f91dbbff9e2343b27a467467750bf,
183106
type: 3}
184107
controllerVisualizationType:
185108
reference: Microsoft.MixedReality.Toolkit.Input.BaseHandVisualizer, Microsoft.MixedReality.Toolkit

Assets/MRTK/SDK/StandardAssets/Controllers/DebugControllers/HandSkeletonLeft.prefab renamed to Assets/MRTK/SDK/StandardAssets/Controllers/DebugControllers/HandSkeleton.prefab

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ GameObject:
1111
- component: {fileID: 4298320384799128}
1212
- component: {fileID: 114324826223023798}
1313
m_Layer: 0
14-
m_Name: HandSkeletonLeft
14+
m_Name: HandSkeleton
1515
m_TagString: Untagged
1616
m_Icon: {fileID: 0}
1717
m_NavMeshLayer: 0

Assets/MRTK/SDK/StandardAssets/Controllers/DebugControllers/HandSkeletonRight.prefab renamed to Assets/MRTK/SDK/StandardAssets/Controllers/DebugControllers/ObsoleteHandSkeleton.prefab

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ GameObject:
1111
- component: {fileID: 4622400267148976}
1212
- component: {fileID: 114037441043972360}
1313
m_Layer: 0
14-
m_Name: HandSkeletonRight
14+
m_Name: ObsoleteHandSkeleton
1515
m_TagString: Untagged
1616
m_Icon: {fileID: 0}
1717
m_NavMeshLayer: 0

0 commit comments

Comments
 (0)