|
@@ -16,8 +16,15 @@ public class MoveChange : MonoBehaviour
|
|
|
#if UNITY_EDITOR
|
|
|
ControllerTracker = OpenXRCamera.Instance.head;
|
|
|
#else
|
|
|
- ControllerTracker = API_GSXR_Module_InputSystem_KS.GSXR_KSRight.inputDeviceKSPartUI.transform;
|
|
|
+ if(DeviceType.type!="A01"&&DeviceType.type!="Phone")
|
|
|
+ {
|
|
|
+ ControllerTracker = API_GSXR_Module_InputSystem_KS.GSXR_KSRight.inputDeviceKSPartUI.transform;
|
|
|
+ }else
|
|
|
+ {
|
|
|
+ ControllerTracker = OpenXRCamera.Instance.head;
|
|
|
+ }
|
|
|
#endif
|
|
|
+
|
|
|
DispatcherBase.KeyDownDelegateRegister(keyDownEventDelegate);
|
|
|
DispatcherBase.KeyUpDelegateRegister(keyUpEventDelegate);
|
|
|
RotToggle.onValueChanged.AddListener(RotToggleOnValueChanged);
|
|
@@ -47,6 +54,9 @@ public class MoveChange : MonoBehaviour
|
|
|
if(!IsRot)
|
|
|
{
|
|
|
TempVector3 = OpenXRCamera.Instance.head.position-goRefrence.transform.position;
|
|
|
+ }else
|
|
|
+ {
|
|
|
+ TempVector3Rot = OpenXRCamera.Instance.head.eulerAngles - goRefrence.transform.eulerAngles;
|
|
|
}
|
|
|
mesh_test.transform.parent = goRefrence.transform;
|
|
|
|
|
@@ -107,10 +117,18 @@ public class MoveChange : MonoBehaviour
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- Debug.Log("正在旋轉======》");
|
|
|
- v3.y = ControllerTracker_Y - ControllerTracker.eulerAngles.y;
|
|
|
- goRefrence.transform.localEulerAngles +=v3;
|
|
|
- ControllerTracker_Y = ControllerTracker.eulerAngles.y;
|
|
|
+ if(DeviceType.type != "A01" && DeviceType.type != "Phone")
|
|
|
+ {
|
|
|
+ Debug.Log("正在旋轉======》");
|
|
|
+ v3.y = ControllerTracker_Y - ControllerTracker.eulerAngles.y;
|
|
|
+ goRefrence.transform.localEulerAngles += v3;
|
|
|
+ ControllerTracker_Y = ControllerTracker.eulerAngles.y;
|
|
|
+
|
|
|
+ }else
|
|
|
+ {
|
|
|
+ goRefrence.transform.localEulerAngles = TempVector3Rot - ControllerTracker.eulerAngles;
|
|
|
+ goRefrence.transform.localEulerAngles = new Vector3(0, goRefrence.transform.eulerAngles.y, 0);
|
|
|
+ }
|
|
|
|
|
|
goRefrence.transform.localEulerAngles = ControllerTracker.localEulerAngles - TempVector3;
|
|
|
goRefrence.transform.localEulerAngles = new Vector3(0, goRefrence.transform.localEulerAngles.y, 0);
|
|
@@ -128,6 +146,7 @@ public class MoveChange : MonoBehaviour
|
|
|
private float ControllerTracker_Y = 0;
|
|
|
private bool IsRot;
|
|
|
private Vector3 TempVector3;
|
|
|
+ private Vector3 TempVector3Rot;
|
|
|
public GameObject goRefrence
|
|
|
{
|
|
|
get =>SceneIOCContainer.Instance.Pull("goRefrence")as GameObject;
|