Skip to content

Commit 2d75c7b

Browse files
ChengNan Yanglawwong
authored andcommitted
Fix issues for Oculus Android
- No reference to OVRPlugin in OculusUtilities SDK - No touchpad axis2d for Oculus Go, update using GetControllerState4 function
1 parent b082903 commit 2d75c7b

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

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

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ public override void BeforeRenderUpdate()
305305
{
306306
case OVRPlugin.Node.HandLeft:
307307
{
308-
var ctrlState = OVRPlugin.GetControllerState((uint)OVRPlugin.Controller.LTrackedRemote);
308+
var ctrlState = OVRPlugin.GetControllerState4((uint)OVRPlugin.Controller.LTrackedRemote);
309309

310310
currState.SetButtonPress(VRModuleRawButton.Touchpad, (ctrlState.Buttons & (uint)OVRInput.RawButton.LTouchpad) != 0u);
311311
currState.SetButtonPress(VRModuleRawButton.ApplicationMenu, (ctrlState.Buttons & (uint)OVRInput.RawButton.Back) != 0u);
@@ -316,12 +316,15 @@ public override void BeforeRenderUpdate()
316316
currState.SetButtonPress(VRModuleRawButton.DPadDown, (ctrlState.Buttons & (uint)OVRInput.RawButton.DpadDown) != 0u);
317317

318318
currState.SetButtonTouch(VRModuleRawButton.Touchpad, (ctrlState.Touches & (uint)OVRInput.RawTouch.LTouchpad) != 0u);
319+
320+
currState.SetAxisValue(VRModuleRawAxis.TouchpadX, ctrlState.LTouchpad.x);
321+
currState.SetAxisValue(VRModuleRawAxis.TouchpadY, ctrlState.LTouchpad.y);
319322
}
320323
break;
321324
case OVRPlugin.Node.HandRight:
322325
default:
323326
{
324-
var ctrlState = OVRPlugin.GetControllerState((uint)OVRPlugin.Controller.RTrackedRemote);
327+
var ctrlState = OVRPlugin.GetControllerState4((uint)OVRPlugin.Controller.RTrackedRemote);
325328

326329
currState.SetButtonPress(VRModuleRawButton.Touchpad, (ctrlState.Buttons & unchecked((uint)OVRInput.RawButton.RTouchpad)) != 0u);
327330
currState.SetButtonPress(VRModuleRawButton.ApplicationMenu, (ctrlState.Buttons & (uint)OVRInput.RawButton.Back) != 0u);
@@ -332,6 +335,9 @@ public override void BeforeRenderUpdate()
332335
currState.SetButtonPress(VRModuleRawButton.DPadDown, (ctrlState.Buttons & (uint)OVRInput.RawButton.DpadDown) != 0u);
333336

334337
currState.SetButtonTouch(VRModuleRawButton.Touchpad, (ctrlState.Touches & unchecked((uint)OVRInput.RawTouch.RTouchpad)) != 0u);
338+
339+
currState.SetAxisValue(VRModuleRawAxis.TouchpadX, ctrlState.RTouchpad.x);
340+
currState.SetAxisValue(VRModuleRawAxis.TouchpadY, ctrlState.RTouchpad.y);
335341
}
336342
break;
337343
}

Assets/HTC.UnityPlugin/ViveInputUtility/Scripts/Editor/VRPlatformSettings/OculusGoSettings.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,7 @@ private string defaultAndroidManifestPath
442442
{
443443
#if VIU_OCULUSVR
444444
var monoScripts = MonoImporter.GetAllRuntimeMonoScripts();
445-
var monoScript = monoScripts.FirstOrDefault(script => script.GetClass() == typeof(OVRPlugin));
445+
var monoScript = monoScripts.FirstOrDefault(script => script.GetClass() == typeof(OVRInput));
446446
var path = Path.GetDirectoryName(AssetDatabase.GetAssetPath(monoScript));
447447
var fullPath = Path.GetFullPath((path.Substring(0, path.Length - "Scripts".Length) + "Editor/AndroidManifest.OVRSubmission.xml").Replace("\\", "/"));
448448

0 commit comments

Comments
 (0)