cancel
Showing results for 
Search instead for 
Did you mean: 

VR won't load. X Plane 11 - Rift S

1960Steve
Explorer
Click VR and it begins loading. Load screen reappears and then does nothing. Click DONE and the X11 crashes.

i5  32gig RAM  1080 card 
61 REPLIES 61

kojack
MVP
MVP

kojack said:

I gave Laminar a detailed bug report. Hopefully they'll take it seriously.


Well, looks like they didn't. Their response was that it's Oculus' fault. They've reported it and are waiting for Oculus to fix it (the thing Oculus has been saying for 1.5 years to not do, but X-Plane keeps doing).
Someone on the X-Plane forum said they reported it to Oculus and was told it's Laminar's fault for not updating their code.

So both are blaming each other.

Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

1960Steve
Explorer
What's Vulkan mode?

kojack
MVP
MVP

1960Steve said:

What's Vulkan mode?



Vulkan is a newer rendering pipeline, it's an alternative to OpenGL. It's far more modern and can give better performance in games. But it requires a fair bit of effort to support, it's not an automatic thing, the developers need to rewrite their graphics engine.
In X-Plane 11.50 they added an optional Vulkan renderer. There's a checkbox to turn it on in the graphics settings page. It runs better and doesn't have the bug that stops X-Plane from running on Oculus runtime v17.
Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

TomCgcmfc
MVP
MVP

kojack said:


kojack said:

I gave Laminar a detailed bug report. Hopefully they'll take it seriously.


Well, looks like they didn't. Their response was that it's Oculus' fault. They've reported it and are waiting for Oculus to fix it (the thing Oculus has been saying for 1.5 years to not do, but X-Plane keeps doing).
Someone on the X-Plane forum said they reported it to Oculus and was told it's Laminar's fault for not updating their code.

So both are blaming each other.



Well, probably a bit of blame could be a little on both.  The xp11 shutdown bug was fixed with an Oculus update +1.5 years ago with 1.35 I think.  This all worked well until Oculus update v13.  Since at the time there were no xp11 updates it seems to me that Oculus introduced something in v13 that caused this.  I did send Oculus a ticket on this but unfortunately it did not go anywhere.

Funny thing is that my Quest wireless w/Virtual Desktop with xp11b9 Vulcan works surprisingly well.  Currently in order to run xp11 you need start it with the VD SteamVR interface.  Then, more surprisingly, it shuts down fine.  I'll maybe check out whether or not 11.50b9 in OpenGL mode works or not later today.  I'll also maybe try it with 11.41.
i9 13900K water cooled, RTX4090, Z790 MB w/wifi6e, 32Gb 6400 ram, 2x2TB SSD, 1000W PSU, Win 11, QPro, Q3, w/Link and Air Link, Vive Pro1 with Etsy lens mod and Index Controllers

TomCgcmfc
MVP
MVP
Update; I just posted this on the xp11 forum;

Well the plot thickens.  Today I tried xp11.41, 11.50b9 Vulkan, and 11.50b9 OpenGl with my Oculus Quest wireless with Virtual Desktop.  All these ran fine, and surprisingly very well with 11.50b9 Vulkan btw.  They also all shutdown properly.

In order to run xp11 with the Quest wireless w/VD you need to startup SteamVR and then open xp11.  I have added xp11 manually to my Steam library so it shows up on my SteamVR dash menu.  Alternatively, using a desktop shortcut works as well.

I'm really not sure why/how this works but it does.  It may be due to some of the secret sauce in Virtual Desktop.  Who knows?  My Quest is currently on its v16 but I don't think that this correlates much to Rift v17.  The Quest v17 is rolling out over the next week so I will try this experiment again later when I receive it.  I have not tried all this with my Quest w/Link cable but I doubt that it will work with either xp11.41 or xp11.50b9 OpenGL since it then just becomes essentially a Rift with Link.  I'll leave that for someone else to try.

Aside; My thoughts regarding who's to blame regarding the current Rift shutdown bug;

The xp11 shutdown bug was fixed +1.5 years ago with the Oculus update 1.35 (may have been 1.34?).  At that time there had been no changes to xp11.  It remained fixed until earlier this year when the Oculus v13PTC update rolled out.  Also, there were no xp11 updates at that time.  I did report this to Oculus (along with a few other v13PTC complaints) but this never went anywhere (= usual, not our problem) and when v13 became final the problem(s) was still there.  So, it seems to me that the shutdown bug was caused by something that Oculus introduced with their v13 update.  I don't have the expertise to look into this in any detail, just cause and effect analysis on my part.

 

i9 13900K water cooled, RTX4090, Z790 MB w/wifi6e, 32Gb 6400 ram, 2x2TB SSD, 1000W PSU, Win 11, QPro, Q3, w/Link and Air Link, Vive Pro1 with Etsy lens mod and Index Controllers

moody11hamed
Honored Guest
From people past experience, how long this will last the before its fixed!!!

TomCgcmfc
MVP
MVP


From people past experience, how long this will last the before its fixed!!!


Impossible to predict imho.  

The shutdown bug requires you to kill xp11 with task manager so basically it is a simple workaround and should not prevent you using xp11 with your Rift.

The current OpenGL bug with v.17 should not be a problem since all Rift users with pc’s meeting Oculus recommended specs should be able to run the current xp11.50 beta version.  As long as your gpu driver is less than ~1.5 years old (397.31 for example) it should have come with Vulkan 1.1 and that’s all that should be necessary.  I’m currently using 442.19 and I’ve found this to be very stable, with good performance.

I would not expect to see Laminar do much for a while because they are spending most of their development efforts getting their new Vulkan mode bedded in.  Also, Oculus seems to be concentrating mainly on Quest improvements.

So I think it’s pretty well up to xp11 users to either find a workaround.  Either that or get another flight sim and/or different PCVR headset.
i9 13900K water cooled, RTX4090, Z790 MB w/wifi6e, 32Gb 6400 ram, 2x2TB SSD, 1000W PSU, Win 11, QPro, Q3, w/Link and Air Link, Vive Pro1 with Etsy lens mod and Index Controllers

kojack
MVP
MVP
From my tests, the lock up / crash when starting VR can be fixed by changing a 2 to a 0 in a single function call that happens once when enabling the headset. Since october 2018 the SDK code has basically said the value must be 0, but Laminar continue to pass in 2.

We also have the fact that the Oculus SDK is returning errors in multiple places that Laminar is ignoring. Such as the cube map swap chain creation returns -3000, but then still tries to render that invalid texture as a layer.

There's also still the fact that it is a Nvidia extension to opengl that is actually the first fail point, inside of the Oculus function.
Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

kojack
MVP
MVP

I found out a tiny bit more about the hang when shutting down X-Plane. I got the new preview version of WinDbg (official windows debugger) and it actually found debug symbols for X-Plane! (They list things like function names inside of X-Plane).

Anyway, using WinDbg, the hang happens due to an access violation exception inside of NVAPI (nvidia's library for doing driver level stuff). Nvidia try to hide stuff in NVAPI behind a query system and use NDAs to block the public from knowing what's in there, so I can tell it's calling there but not which hidden part.

Basically at the hang X-Plane is shutting down a boost serialization singleton, That calls Kernel32's ExitProcessImplementation, which calls the NT kernel's RtlExitUserProcess, which calls the kernel's LdrShutdownProcess, which calls LdrpCallInitRoutine, which calls Nvidia's QueryInterface which recursively calls itself 2 more times, then it throws the exception.

Ok, ignore all that technical crap. The important bit is LdrpCallInitRoutine. That is how libraries are loaded and unloaded.

So what seems to be happening is X-Plane is doing a shutdown, part of that tries to unload what I'm guessing is a Nvidia library, which freaks out.


This is an interesting coincidence. The enable VR crash is due to a Nvidia function failing. The exit program hang is due to a Nvidia library crashing. Is Oculus doing something that confuses the Nvidia driver? Why do no other programs have the exit hang?
There may be three way blame here: Oculus, Laminar and Nvidia.


Slightly interesting side note, when running Vulkan X-Plane doesn't actually use any of the Oculus Vulkan functions, it still calls the OpenGL ones. It just doesn't try to make a cube map anymore, so it doesn't fail.
I wonder if it's doing something like Euro Truck Sim 2 does? ETS2 was DX9. When Oculus dropped DX9, ETS2 still rendered in DX9, but copied each frame over to a DX11 texture and gave that to the Oculus sdk. I guess X-Plane is rendering with Vulkan then copying that to OpenGL to give to Oculus. I don't know why, ovr_CreateTextureSwapChainVk has been available since 2017.

Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

paul_tyquin
Honored Guest
X-plane posted on their Facebook blaming Oculus