Skip to content

Commit 8c7772f

Browse files
author
ChengNan Yang
committed
Add Interaction Mode support for Wave XR Plugin v4.1
1 parent 69caf01 commit 8c7772f

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

Assets/HTC.UnityPlugin/VRModule/Modules/Editor/WaveVRModuleEditor.cs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,25 @@ public WaveVRSymbolRequirementCollection()
3939
reqFileNames = new string[] { "RenderModel.cs", "ButtonEffect.cs", "ControllerTips.cs" },
4040
});
4141

42+
Add(new SymbolRequirement()
43+
{
44+
symbol = "VIU_WAVE_XRSDK_4_1_0_OR_NEWER",
45+
reqTypeNames = new string[] { "Wave.Native.WVR_EventType" },
46+
validateFunc = (req) =>
47+
{
48+
Type wvrEventType;
49+
if (SymbolRequirement.s_foundTypes.TryGetValue("Wave.Native.WVR_EventType", out wvrEventType) && wvrEventType.IsEnum)
50+
{
51+
if (Enum.IsDefined(wvrEventType, "WVR_EventType_ArenaChanged"))
52+
{
53+
return true;
54+
}
55+
}
56+
return false;
57+
},
58+
reqFileNames = new string[] { "wvr.cs" },
59+
});
60+
4261
Add(new SymbolRequirement()
4362
{
4463
symbol = "VIU_WAVE_XRSDK_3_99_31_OR_NEWER",

Assets/HTC.UnityPlugin/VRModule/Modules/UnityXRModuleBase.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,10 +226,16 @@ public sealed override void BeforeRenderUpdate()
226226
submodules.UpdateModulesDeviceConnectionAndPoses();
227227

228228
// process hand role
229+
#if VIU_WAVE_XRSDK_4_1_0_OR_NEWER
230+
var currentRight = submodules.GetFirstRightHandedIndex() != INVALID_DEVICE_INDEX ? submodules.GetFirstRightHandedIndex() : uxrRightIndex;
231+
var currentLeft = submodules.GetFirstLeftHandedIndex() != INVALID_DEVICE_INDEX ? submodules.GetFirstLeftHandedIndex(): uxrLeftIndex;
232+
#else
229233
var currentRight = uxrRightIndex != INVALID_DEVICE_INDEX ? uxrRightIndex : submodules.GetFirstRightHandedIndex();
230234
var currentLeft = uxrLeftIndex != INVALID_DEVICE_INDEX ? uxrLeftIndex : submodules.GetFirstLeftHandedIndex();
235+
#endif
231236
var roleChanged = ChangeProp.Set(ref moduleRightIndex, currentRight);
232237
roleChanged |= ChangeProp.Set(ref moduleLeftIndex, currentLeft);
238+
233239
if (roleChanged)
234240
{
235241
InvokeControllerRoleChangedEvent();

0 commit comments

Comments
 (0)