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

I have the same issue, microstuttering with my system, and using the openxr toolkit, but dont know if it is related to the FFR. Will test it out . (3090, i9-10850, 32 GB memory, G2

1 Like

@LightRumble443 there it is, I solved this via DM, and forgot to post it widely:

1 Like

With microstutters and WMR I find that using motion reprojection can trigger it. With a 3080 Ti I often find that my VRAM is maxed out.

To narrow it down if it’s the case of reaching a resources (like VRAM) limit then when it starts happening in sim then Ctrl + Tab out of MSFS VR and see if it’s smooth in the WMR Portal home. If it stutters in that as well then it means you need to tweak something down (OXR resolution etc). Sometimes it seems to happen randomly and I need to shutdown MSFS, restart WMR and then MSFS (in that order, as in have WMR initialized before starting MSFS).

I’ve been fighting some bad performance drops for the past few days, and found a few airport & scenery packs to be the cause.

The settings that I’m about to share are based on 3rd party scenery having been removed. I find them to be quite unfriendly to VR. :frowning:

i10700k, 3070 FE, 32GB Ram, HP Reverb G2, nVidia GR 511.79

NCP:
Power Management Mode = Prefer Max Performance
Texture Filtering Quality = Performance
Vertical Sync = Fast (not required for VR but helps prevent tearing in 2d)
VR pre-render = 2

OXR Tools:
Latest preview = On
Custom render scale = 80%
MR = Automatic

OXR Toolkit:
FRS 85 (2398 X 2346)
Sharpness 40
MR = Unlocked
FFR = Custom
Inner ring = 70%
Mid Resolution = 1/2
Outer ring = 85%
Outer Res = 1/4
Prefer = Vertical

In-Sim Settings:
Render scale = 100
AA = TAA
Terrain and Object LOD settings = 100
Aniso Filt = 16x
Tex Syn = Med
RayM Reflections = Med
Contact Shadows = Low
Bloom = On
Tex SupSamp, Amb Oc, Light Shafts = Off
Everything else = High
Shad Map = 768
TS and CR = 128

I think these settings still have “more” in them. In other words, I think there is still some room for improvement when flying in most places.

Unfortunately, many 3rd party scenery packs cause me a lot of stuttering and poor performance. When I uninstall, or avoid them, life is good!

Edit: I’ve found a configuration that produces mid-to-high 30’s / low 40’s FPS with MR disabled. (OXR Tools: Render Res= 100; MR = Off; everything else the same.)

I prefer the fluidity of Motion Reprojection and happily sacrifice a bit clarity to obtain it.

1 Like

If you are running the Q2 at 72Hz and using ASW it will lock you at 36/37FPS assuming you’re able to hit the target frame rate for ASW to do its thing - which it looks like you are. So you’ll be effectively getting 72FPS with ASW.

Turn off ASW to see what your ‘actual’ FPS is. Don’t know if you are aware but you can disable and re-enable ASW using right CTRL+NUM1(off) and right CTRL+NUM4(on auto).

I’ll do that! Cheers.

A few “quality of life suggestions”:

UI

  1. Tooltip, color-coding or some other visual indicator that immediately makes it clear which settings require ctrl-tabbing in and out of VR to see the results of changes

  2. Option to map to arrow keys, and ideally a way to have keyboard input not register in the sim to avoid headaches with overlapping bindings and needing special bindings just for the toolkit

  3. Mouse interaction. Let me use my mouse wheel

  4. In-app tooltips or definitions. Especially in some of the advanced tools or detailed performance info, I don’t remember what half those abbreviations mean or what I should know about them

  5. More decimal points to the Contrast scale. +.1% is often all I need but I’d want to tweak subtly within that

  6. Some sort of color calibration image that shows when tweaking brightness, contrast, and saturation

UX

  1. Config snapshots and saved configs, ideally with easy in-VR ability to hotswap between them to test various settings, situational profile switching, and ease of benchmarking. Not sure if you capture this for bug reporting, but I imagine it would be useful there as well

  2. Save some metadata around FPS and detailed performance with the above mentioned config snapshots. If this was all packaged up in some JSON that would make it very easy for others to work with as well

  3. Ability to easily share configs online in forums, YT vids, etc. Using the example of #2 above, depending on how you encoded this, you may be able to simplify such that people can copy/paste a hashed value “seed” into a field in the assistant app and it can reconstruct a profile from that. This solves the problem of everyone sharing their litany of an ever growing list of convoluted settings with no easy way to input them or compare them. Hell, you could even imagine a page that lists those hashed values and avg. frame rates people get with them for a given combo of system specs, or community votes

Love the work you’ve done to date and it has made real impact. But it is getting increasingly difficult to manage and, well, use, because of the nature of the UI and the amount of stuff in it now.

1 Like

Yes, I am using hand tracking with my Aero and a leap module, it is working well with both steamvr runtime and varjo runtime. I had to tweak the config file to fake the index controllers

1 Like

Thanks for posting. I was mucking about with NCP the other day as someone suggested I had too many things changed from default for MSFS. I removed all of those and gained (incredibly) 20+ FPS in 2D (so mid 30s to mid 50s). Awesome right?

Not so much in VR! Installed v 1.0.2 here and was getting a lot of stuttering with setting previously good on 1.0.1. So now been chopping and changing again. Your settings/system seem very close to mine (I have an i9 10900K and 3080 being the main difference) so I will try these settings to see if I can get something workable. I find there are so many different settings that it can be really difficult to avoid just getting into a bit of a mess with it.

This is definitely a thing for me and is highly frustrating given the shut down/restart time :frowning:

You’ve changed something else on your system. There are no code changes between 1.0.1 and 1.0.2 that could affect performance.

1 Like

Yes, I have - it was making changes to the NCP settings - sorry - didn’t mean to suggest otherwise. I need to work back and @OneMoreBulleit post is helpful as they’ve included their NCP settings.

There are only 2 such settings (upscaling type and upscaling resolution) and they display a big red text when you change them. Seems sufficient.

If this was possible, we would have already done it this way…

PS: you can already map arrows key from the Companion app.

If this was possible, we would have already done it this way…

There isn’t enough space on screen to have this much text. We also support some headsets that are low-ish resolution hence small text is uncomfortable. We could only add a very few more words and it would not be helpful. Try explaining FFR in 8-12 words :slight_smile:

As for the detailed performance info, they are not for you to read, hence the abbreviations. I should’ve called them “developer” or something else. Besides app CPU/GPU the other ones are not useful to you, and they’re useful for us to investigate issues. Believe me you have 0 use for “VRS RTV” and I have 0 intention to spell it out “Variable Rate Shading Render Target View”.

We have plans to do that one already!

We will likely have something like this as part of our upcoming desktop application.

This is a good idea which we have on our list already but this is a lot of work and not at the top of our list.

This is a lot of work too, and IMO little value added. The OpenXR Toolkit settings are only a small fraction of what affects FPS. Between game settings, driver settings and other windows tweaks. I don’t want to start having people filing issues “I loaded this config and I expected 50 FPS, why am I not getting that?”.

Additionally, FPS is only one metric and it is not alone representative of performance (eg: smoothness).

When I see the amount of messages on this forum of people modifying settings and breaking their performance, l without even realizing they did touch some settings, I don’t want to attach the OpenXR Toolkit settings to this amount of undetermism and outside variability, and therefore be accountable for the settings and resulting performance.

You have no idea how many DMs I receive of “hey your software is causing XYZ issue”, which makes no sense at all, and we spend time debugging and investigating, only to hear a week later “oh I just found out that I had also changed XYZ settings outside of OpenXR Toolkit” or “I had updated this driver”… “and I reverted that and it all works now”…

Same reply as above. Additionally, some settings are only applicable to certain hardware and/or DX11 vs 12 etc etc. Too many variables outside of our control to justify this sort of effort.

I’ve always wanted to keep minimal, but every time we don’t add a tweak to the UI we get called out on it. “Your range for upscaling resolution is too small”, “we need a way to move FFR center”, “we need to be able to select screenshot format”…

We added the Expert setting to hide some of them to avoid confusion. And now I get people asking me “I watched the YouTube video and I don’t have all these settings”… We had the Experimental mode for that too, but it looks like you have it enabled, despite of saying that you already have difficulties to manage the existing settings, you still elected to show more of them, therefore “asking” for something more difficult to manage. I’m sure you’re not the only one though :slight_smile:

5 Likes

Oh. I thought it was normal to have such distortions. I can’t make a screenshot right now, but i’ll provide as soon as possible. I normally use 150% oxr and 80% fsr, ingame TAA always at 100%. I have tried 100% oxr and it was the same. I am not 100% but i think i’ve tried it without fsr/nix aswell.

For sure. I just want to understand what you mean by “distortion”, cause it’s a little vague otherwise :slight_smile:

hard to explain, i hope i’ll be able to capture it with a screenshot. It’s like the most horrible ghosting/waving/texture spilling…hard to describe. It’s like the part of the fov that gets closed is getting sucked into a black hole :smiley:

Ah, Please tell me you are not talking about Fixed Foveated Rendering and calling it FOV?

1 Like

no, ofcourse not. lol. I even tried it without FFR and just lowering FOV and no matter what i do it produced distortions

Wow, this is absolutely amazing. It gives my 2080ti some more breathing room for sure, I now can have both clear legibility of cockpit instruments and great performance. THANK YOU SO MUCH! I can definitely considering to cancel my Varjo Aero pre-order since my G2 gets such great performance now. Any chance that we will get eye tracking support some time in the future?

3 Likes

Hahaha I mean when you set FFR to “Cull” which is similar to limiting the FOV, it does create the black hole effect you are talking about! So I thought maybe that was the confusion.

For the FOV override it’s weird, because last I tested it, the rest of the screen was simply black (as expected).

1 Like

Well i have an older wmr headset Dell Visor. I’m sure it has something to do with it. Additionally…if i run the wmr in “optimize for performance” the wmr itself is limiting the fov to 90 which is producing some minor (black) distortions. However if i run it in “best quality” fov is normal and is reported at 100 in the toolkit. The deal is, there’s an age old bug in WMR where if you make the headset run in “optimize for performance” it will reduce the FOV to 90 but it will for some reason not lower the resolutions. Despite this producing a bit of distortion (completely black tho) on the peripheral vision (call it rubberbanding), the visual effect on my headset is simply amazing. Ofcourse that’s not hard to understand, if you lower the FOV and don’t lower any resolution, the image quality will get better. Now when i try lowering the FOV even further with the toolkit, i notice this effect gets even more pronounced (increase in clarity). Also, the toolkit could enable me the same result as the wmr bug does, without any peripheral problems, however for some reason the toolkit creates even worse (the above mentioned) distortions making the function useless for me :frowning: