Not entirely sure if these issues only appeared in 4.17, but have begun noticing them more after upgrading.
Firstly, there seems to be a bug that breaks rendering (sound and stereo layers still work) when you change the IAD (Eye distance thing on the headset) when you aren’t wearing the headset. Started to look at tracking it down but if anyone could point me in a general direction that would help. I currently get the output “[Kernel:Default] IAD changed to XX.Xmm” but when I return to putting my headset on, the screen is now black. If I do this with the headset on, it works fine. I only noticed it accidently but won’t help if people accidently do the same as me then cannot see thier game.
The other issue seems to be that I start in the floor more often than not, espeically if I start the game up without my headset on, and then put it on. Some people have mentioned (https://forums.unrealengine.com/deve…-on-floor-4-17 and https://answers.unrealengine.com/que…ng-in-417.html) there may be a fix to due a naming issue, however if I force the game to ‘Floor Level’ at the start, it makes no difference. I’m wondering if the Tracking Origin needs to be set after tracking of the headset has definately happened, or whether there is something else I need to do?
There is definitely a different behavior of 4.17 vs. 4.16 when it comes to the Oculus interaction. Indeed the HMD is powered as soon as the VR Preview is started, which also seems to set its tracking origin right away. If you are not wearing it, you will find yourself offset once you put it on. Try to call Reset Orientation and Position linking it to a key / button on the controller. This should recenter your view.
Additionally in my case the image in the HMD “freezes” but remains in front of your eyes as soon as the VR Preview is terminated. The effect is quite disturbing. It was much better in 4.16 and earlier when it would simply turn-off/go black. I hope they revert it to the previous behavior.
So I also took a look into the ‘ResetOrientationAndPosition’ for the Rift and have noticed that before 4.17, the Engine was using Oculus’ 1.16 release and recently switch to 1.17 release of Oculus. It looks like in 4.16, the reset function called ‘ovr_RecenterTrackingOrigin(OvrSession);’ and in the new 4.17, ‘ovrp_RecenterTrackingOrigin2(ovrpRecenterFlag_Default);’ is called. The default flag should use Oculus’ default facing direction, but it doesn’t seem to and just uses the current forward vector of the headset.
Not sure whether this is an Oculus change or an issue with their changes not being re-worked from Epic.
Ah okay, was just looking at the tags on the GitHub from Oculus for UE4 and it said 1.17, might be wrong then.
My log also says: “LogHMD: Oculus plugin initialized. Version: 4.17.1-0+++UE4+Release-4.17, OVRPlugin: 1.17.0”
@Pots4 Clear, you are looking at the Oculus-VR branch on GitHub, which always has the most recent version. Did you compile it from there?
I was referring to 4.17.1 as it gets deployed through the Epic Launcher.
There seems to be an issue with how the headset is initialised in this Engine Ver. as I am often in the floor at the start and can be facing the wrong direction. When the game starts, it seems to use the players head orientation to set the worlds forward vector, rather than having it as the default/Oculus forward facing, which it seemed to do before.