OpenXR Toolkit (upscaling, world scale, hand tracking...) - Release thread

Oddly enough there was a YouTube video (flight sim guy) today that suggested logging out and back into your MSFS account in the game fixes the issue - although it wasn’t this specific scenario

Maybe try this!?

It helped a lot for me… most of the times.

What is the issue that’s resolved by logging out and back in?

First of all, I never switch back and forth from/to VR while in-flight (or on the ground :-)). Enter VR while still in a menu, then press the FLY-button. Do the same in reverse when exiting VR: while in-flight, first return to the main menu, then exit VR.

Secondly, in my case (with my RTX3060Ti with only 8GB VRAM) the problem is mitigated by setting the texture resolution to the same value (High in my case) in the PC and VR menu. I think that all other settings can be different without causing this problem.

1 Like

The giant fps drop when switching out of VR mid flight

This has been around since SU5. Before that there were no problems switching back and forth between VR and 2D. And back then I used a card with 8GB VRAM so that is not the issue.
Something changed in MSFS since SU4.
Only real solution is to quit WMR and restart it.

Where can I find the AMD FSR 2 option in MSFS?

It only shows up under certain AA settings.

And I think you need to be in DX12. Not sure if that was already mentioned above or not.

the AMD Fidelityfx sharpening I have available. The AMD FRS 2 I have not, even though I change it to DX12.

Just wanted to thank you and the team again @mbucchia for your continuous work and updates on this tool. :love_you_gesture:

10 Likes

@mbucchia Do you know what kind of reprojection is used in MSFS?

I’m asking because I’ve an ugly bug with ASW on Oculus:

Which seem to be related to the fact that Nvidia 40 series cards are not properly supported for now. At least, that’s what Support told me when I reported it.

Anyway, I realized that, in MSFS, if I activate the reprojection and force my ASW to 45FPS ASW OFF, I’ve the same smooth experience, but without those crazy artifacts.

And I’m wondering if I could apply the same reprojection technique to my other games using an external tool for example.

There is no reprojection done in the game really. All of it is done in the VR software.

The name of the option in MSFS is super misleading. You are not actually enabling or disabling reprojection, you are selecting what information to submit to the VR software so it can do (better) reprojection when possible.

If you set ASW to OFF in Oculus software, you are currently not really using motion reprojection. The Reprojection mode option in MSFS is only indicating “what information should I submit for the platform to do reprojection”. It does not enable motion reprojection by itself.

The difference between OFF and Depth is that you now submit the Depth buffer, which can be used for:

  1. improved spatial reprojection (if ASW is OFF, and this isn’t at all the same as ASW, it does not do motion interpolation of objects in the scene, it only does perspective correction of head movements)

OR

  1. ASW 2.0 (if ASW is ON, and that does actual motion interpolation, ie make the whole scene advance in time through motion estimation, not just better correction of head movements).

The Reprojection mode “Motion and Depth” currently does nothing in MSFS since no VR software support it. I believe the option will automatically revert to Depth or Off after you try using VR.

So if you are getting good results with ASW OFF and Reprojection set to Depth, then you are using “improved spatial reprojection”.

Almost no other game today (whether OpenVR or OpenXR) are submitting depth. So you cannot replicate this to other games unfortunately. To my knowledge, the only 2 OpenXR games today submitting Depth are MSFS and Hubris.

I’m curious to hear: if you set ASW to ON in Oculus software, do you then see a difference betwen MSFS Reprojection set to Off or Depth?

7 Likes

Wow, this is great info. What happens when depth option in MSFS is used in combination with MR in the OpenXR Toolkit?
I use this with WMR in G2. No MR in OpenXR.

MR in OpenXR Toolkit is nothing more than toggling MR in OpenXR for WMR btw.

WMR supports 3 modes right now:

  1. WMR/OpenXR Toolkit MR is OFF, MSFS Reprojection mode is OFF: use standard spatial reprojection.
  2. WMR/OpenXR Toolkit MR is OFF, MSFS Reprojection mode is Depth: use improved spatial reprojection (typically better smoothness for head movements/static objects).
  3. WMR/OpenXR Toolkit MR is ON, MSFS Reprojection mode does not matter: use motion reprojection (typically better smoothness globally, including moving objects, however possible visual artifacts).

The difference with Oculus discussed above is the 4th mode:

  1. Oculus ASW is ON, MSFS Reprojection mode is Off: ASW 1.0 (similar to WMR MR mode 3) described above)
  2. Oculus ASW is ON, MSFS Reprojection mode is Depth: ASW 2.0. I am yet to get anybody to tell me if this is better than ASW 1.0 for them?

It’s unclear to me what other platforms benefit from Reprojection mode set to Depth. I’ve heard good things from Varjo owners (without the Beta motion reprojection, just the improved spatial reprojection). No idea about Vive/Index/Pico/Pimax. The information of these capabilities is unfortunately not really discussed by vendors.

5 Likes

Is this strange artifact mode only when out over the water? Maybe you have Bloom on??? I have not heard about any similar problems with others who have 4090s on this forum. What is your hardware and which Nvidia driver are you using (what settings in the control panel as well). There are so many factors!! Here is a OculusDebugCLI script that I use with my 3080ti that works very well and has very few artifacts with locked 45 fps ASW - I am using the Nvidia 527.37 driver.

ECHO ON
echo server:asw.Clock45 >> “TEMP.txt”
echo perfhud set-mode 0 >> “TEMP.txt”
echo service set-pixels-per-display-pixel-override 1.6 >> “TEMP.txt”
echo service set-client-fov-tan-angle-multiplier 0.75 0.75 >> “TEMP.txt”
echo service enable-adaptive-gpu-perf-scale off >> “TEMP.txt”
echo exit >> “TEMP.txt”
call “C:\Program Files\Oculus\Support\oculus-diagnostics\OculusDebugToolCLI.exe” -f “%~dp0\TEMP.txt”
del “TEMP.txt”
EXIT
//Notes:

//
//For Clarity MAX, set Base Res at 72Hz,5408x2736, Encoder res = 3648, Bitrate=200,Sharpen=1
//
//Clock30 actually means one-third of 90 (=30) but if the HMD is set to 72fps, then the result is 24Hz ASW
// ASW options are 45,30,and 18 ( Why not one-fourth = 22.5)
//perfhud set-mode 1 shows Performance (1->7) and reset removes it
//layerhud set-mode 1 shows Pixel Density and FOV and reset removes it
//For more settings, startup OculusDebugToolCLI.exe and try the various help options

No difference at all. Same reprojection artifacts.

I also use a Quest 2.

For me, I also don’t notice a difference if depth and ASW is enabled. Artefacts appear to look the same in both cases.

From what I understand after reading Meta’s literature, ASW 2.0 is meant to be better than ASW 1.0, but I’m not sure how much better it is if the FPS only ever reaches half the headset refresh rate (or slightly above half).

Cheers,

image

It definitely doesn’t work in MSFS, so this must not be ASW 2.0 :sweat_smile:

1 Like

What “Override Resolution” setting makes sense for the Reverb G2 in OXRTK? I’m talking about the DLSS Performance → OXRTK oversampling scenario. There has to be the best ratio to get he best detail / aliasing / oversampling result without overloading the resolution. What are the good points to try: 150% of the native (what is native resolution in OXRTK? It’s gone now that I changed it…)? 133.33%? 125%? Anything else?

I’m currently trying 4658 x something. For me, on 4090 it has about the same performance as TAA100 → no Resolution Override (full CAS sharpening) in OXRTK.
Pros: noticeably better detail, looks like a major improvement in visual quality, DLSS glass cockpit blurriness is gone, screens look sharp now.
Cons: DLSS blurriness when changing numbers on radios, altitude etc. and some moving objects. I can see some aliasing, even with sharpness at 0.

Should I use CAS sharpening when oversampling? Sim sharpening is at 0.