Hello
I am replacing from oculus go to oculus quest.
I want to make the controller compatible with 3DoF, but I don’t know.
Is there a script that switches the controller of oculus quest to 3DoF?
thank you
environment:
・ Oculus integration v29
・ Unity 2020.3.16
No. But your code could ignore its position and only look at its rotation if you want. (It’ll make a lousy Quest game, but you could do it.)
1 Like
@JoeStrout
But your code could ignore its position and only look at if you want.
I want to ignore the position of the controller and fix it, what should I do?
(I tried commenting OVRCamerarig.cs, but there is no change.)
Sounds like you’re starting with some plug-in or asset. In that case, I don’t know — I always just track the position and rotation of the hardware directly, without using any drop-in asset for it.
Please don’t make 3DOF even for a port. And I am not sure oculus would accept it as last I checked that wouldn’t pass it’s guidelines. You could sidequest store, but I really do think you’re best off going with 6DOF.
2 Likes
After that, I checked the source and found that it was controlled by the GetLocalControllerPosition function of OVRInput.cs. When the source is modified as follows, the z-axis movement of the controller is fixed and it is converted to 3DoF, so I would like to implement it with this.
if(!OVRManager.instance.usePositionTracking)
{
Vector3 Vec = OVRPlugin.GetNodePose(OVRPlugin.Node.HandLeft, stepType).ToOVRPose().position;
Vec.z = OVRPlugin.GetNodePose(OVRPlugin.Node.HandLeft, stepType).ToOVRPose().position.z - Vec.z + 0.25f;
//Debug.Log("OVRInput.cs" + Vec);
return Vec;
}
else
return OVRPlugin.GetNodePose(OVRPlugin.Node.HandLeft, stepType).ToOVRPose().position;
1 Like