My 2070 SUPER VR settings and suggestion (Reverb G2 - WMR)

Hi,

This post is the follow up to my series of settings and suggestions post. They are becoming increasingly popular and I’m glad it is helping others and I thank you all for your feedback!

Other posts in the series:
My 2070 SUPER 4K settings and suggestions - episode 2
My 2070 SUPER VR settings and suggestions (Index - SteamVR)

Please vote and help having VR wish list topics in next Q&A and Dev blogs:
Dev Q&A and Feedback Snapshot: please make a VR only category

My wish list topics (please vote!)
Cockpit Size and World Scale in VR
EFIS Screens Problems and Solutions for higher legibility
Ambient Night Lighting illuminating more than a full moon
Provide a Sharpen strength setting, and more post-processing effect controls in VR
Implement a metering system better suited for VR
Increase distance threshold to see other aircraft navigation and strobe lights
TAA is transforming road traffic into ghosts (self-cancelling moving pixels)
Render the Sun with a fading disk when bloom is disabled
Bake Ambient Occlusion in the cockpit when Ambient Occlusion is disabled
Night lighting issues still present - The community solutions
Can you please add a “Sun Glasses” mode :sunglasses: ? (not a joke)
Add support for mouse wheel to change the UI settings sliders
FS2020 is breaking the VR golden rule: don’t move the camera, the user is
Let users adjusting the Render Scale setting by increments of 5 or 1 (instead of 10)

In general, the settings are carefully adjusted in comparing how individual and combinations of settings were affecting the overall fps, and with my understanding and practical knowledge of how the 3D rendering pipeline is working behind the scene.

I’m not pretending this is the best overall plug-and-play solution to the FS2020 performance issue some of you are having either, but you might find these are good and solid basis to build upon for your systems to get started with. This is also highly dependent on CPU, RAM and other things on your own systems so your mileage will vary.

These settings were adjusted for a system running:

  • 9700K@4.6
  • NVidia 2070S w/8GB (not oc.)
  • 32GB RAM.
  • FS2020 1.12.13
  • Win10 20H2
  • Nvidia 457.30

I hope these will help you enjoying FS2020 in VR!

NB: if you’ve already read “My 4K Settings” and “My VR Settings (Index)”, most of the NVidia and Win10 chapters are similar. I’ve updated some of the content and will propagate it back to the other discussions in the coming days. I’m tagging new content with the following label for a few days so that you can quickly find them out inside the similarly named chapters: (new paragraph). Otherwise new chapters are specific to WMR and OpenXR.


Introduction

There are several items contributing to the overall performance of FS2020, some are intrinsic like its settings and others are solely system related. Overall the system has a bucket of resources per-frame and both the OS and the simulator rendering engine must be tuned to fit as much as possible into this bucket. In effect some of these settings can be detrimental to the performance because they could sometimes take too much room and fight with others trying to take their spot in the bucket.

I’ve also noticed the FS2020 rendering engine might be prioritizing some of the settings if there is contention and the visual outcome might sometimes be contrary to what you’d expect. It is like having less buildings drawn in the distance despite maximizing the draw distance. This makes sense because besides the time resource in a bucket (how many ms before next frame) and the speed at which the video card can process the pixels, there is also a finite resource of VRam and when a resource takes a chunk the video card might discard another one. If the demand is higher than the resource, the driver and the engine will have to constantly stream resources and this is causing a performance hit. This is exactly the same problem when the OS is paging memory on a HDD because too many programs are using the available RAM.


NVidia Settings

(new paragraph)
I’d recommend you use NVidia Driver 457.30 for VR (and 2D actually) with a 20XX and 30XX*.

Comments:

The idea is to reduce the amount of time between the moment the engine finishes rendering the next frame and the time the video card is displaying it. This might contribute in also freeing some VRam resources because there is no need to buffer as much but I’m not entirely sure.

The combination of Low Latency Mode, Threaded Optimization, Vertical Sync settings and Virtual Reality pre-rendered frames, is the one which is giving me the smoothest stutter free experience. However unlike “My 4K Settings” I believe “Low Latency Mode” and “Virtual Reality pre-rendered frames” are the only important ones in VR because the Reverb G2 is running in NVidia Direct Mode and it is not considered as a regular monitor.

You could eventually change Texture Filtering Quality to ‘Quality’ but I’m not sure how much this is really making any change both visually and to the fps.

With the NVidia 457.30 driver and Win10 20H2, I’ve found it is now better setting Threaded Optimization ON. (with older versions of drivers and simulator, threaded optimization was having an impact on my system and was better off).

Tip: FS2020 executable is hidden inside the WindowsApps folder. In order to customize settings for this program, I believe selecting “Show only programs found on this computer” is sufficient. Otherwise, run and close FS2020, then open the NVidia CPL and click Add, it might be appearing at the top of the list when you select “Recently Used”.

You might want to also read:
What NVidia Drivers are recommended for VR
How to install Nvidia drivers properly when trying out different versions

*I’ve also tested 416.14, 452.06 and 460.89 but they were giving either more stutters or less fps in general. If you’re using a RTX 3060 you’re stuck with the known Nvidia drivers VR bugs (my suggestions are mitigating most of the problems but they are not entirely eliminated).


Win10 Settings

Comments:

Hardware-Accelerated GPU scheduling (HAGS) and Game Mode must be turned OFF since FS2020 update 7, and/or NVidia 457.30, otherwise it is causing CPU/GPU sync problems in VR and it introduces lots of stuttering.

VRR is not having any influence in VR, however I have it ON because I’m reducing juddering when flying in 3D with my monitor (see “My 4K Settings”)*.

*NB: Win10 VRR is mandatory of UWP applications, Win32 apps only need the NVidia CPL settings.


WMR Settings

Comments:

This mostly concerns WMR Portal and WMR apps. If you’re not using any you might want to reduce any unnecessary overhead.

Level of details is changing the rendering complexity of the WMR Portal Home environment while “window resolution” controls the quality of the floating windows in the VR world you can display while in VR.

Display Resolution and Frame Rate are self-evident: there is no point using a G2 if not to its full capabilities, other headsets would be a better choice otherwise.

Input Switching is how WMR Portal is grabbing the mouse input (the blue bar displaying at the top of your 2D monitor) and for Flight Simulator there is no need, it can even be an encumbrance, therefore I find it best to keep manual control.

WMR Virtual Monitors

In order to support classic Win32 applications in Windows Mixed Reality (WMR), each time a new Win32 application is launched, a virtual monitor has to be created. Unfortunately, creating a virtual monitor is an intensive task that can cause the headset display to briefly freeze and by default WMR is pre-allocating 3 virtual monitors.

Unfortunately if you’re not using this feature, which is displaying a Win32 app into a floating window in the VR world, it might be taking some resources you might want to free instead. In effect, some are reporting they are eliminating all stutters they were experiencing in doing so and you might want to try.

To disable virtual monitor pre-allocation:

  1. Launch Registry Editor
  2. Navigate to HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Holographic
  3. If the PreallocateVirtualMonitors REG_DWORD is not present, create it by selecting Edit > New > DWORD (32-bit) Value and entering PreallocateVirtualMonitors as the name
  4. If the PreallocateVirtualMonitors REG_DWORD is present (or you just created it), double-click the entry and change “Value data” from 1 (its default value) to 0 (zero)

Virtual monitors will now allocate when you attempt to launch a Win32 application in Windows Mixed Reality instead of pre-allocating. To reset this and re-enable virtual monitor pre-allocation, return the DWORD “Value data” to 1.

You can read more about this here:
Monitor and input handling issues - Microsoft docs

NB: some users are reporting CTD when transitioning out of VR mode and deleting this registry key, PreallocateVirtualMonitors, solved this issue on their systems.


WMR OpenXR Settings

Windows Mixed Reality (WMR) includes both its own proprietary API to communicate with the WMR headset (like the Reverb G2) and the WMR OpenXR Driver to communicate with the application.

FS2020 is using OpenXR (OXR), a VR Application Programing Interface (API). It is independent of Windows Mixed Reality (WMR) or SteamVR (OpenVR) and Its value proposition is to make any application instantly compatible with any headset as long as there is an OpenXR driver for it.

In order to get the most of the FS2020 VR experience, you must download and install the following:
OpenXR Developer Tools for Windows Mixed Reality from the Microsoft Store

You can use this tool to adjust key OpenXR settings for FS2020 and I’d recommend the following to get started:

Comments:

Latest WMR OpenXR preview version (v105) is working better on my test system (less stutters and slightly better fps) and I suggest you use it now.

Motion Reprojection is not working properly with simulators in general and it is no different with FS2020 (wobbling behind the propellers, wings shape deforming and blending with the ground, image hiccups from time to time, etc…). In addition it is not only taking some valuable resources, but it is also having bugs like pincushion image distortions and lower resolution images, therefore, I leave it to disabled.

NB: some will argue they can’t use VR if it is not refreshing above 45fps or without Motion Reprojection which is virtually creating new inter-frames to compensate (it is more complex than this but think of the “Sport Mode” on your TV which renders 120Hz or 240Hz from a 60Hz signal). In practice if you can bear juddering, or if you give it time to get accustomed to, I’d suggest you read the following for more information:
Why do I prefer 30fps stable with juddering rather than 90fps with motion smoothing

Render Scale is probably the most important setting you’ll be “playing” with. In short, it is telling what is the maximum resolution FS2020 is rendering the views (each eye). You can get additional fps in making FS2020 rendering less pixels with a lower render scale, but at the same time, you’d get less sharp visuals.

It is important to note this setting can be tailored to your advantage beyond a simple resolution adjustment and I’m explaining all this below.

NB: the Reverb G2 panel resolution is 2160x2160 but because of its lenses design and optical properties, the nominal image resolution an application must render is 3172x3100, which corresponds to 100% OXR Render Scale.

SteamVR OpenXR and Reverb G2

It is possible to also use the Reverb G2 with the SteamVR OpenXR driver. I didn’t find any performance advantage for now but I’m reserving this entry here to add further comments over time.


Balancing Visuals and Performance

Although we all wish being able to render FS2020 in VR at 90Hz at full G2 resolution, we must admit it is only a desirable goal. In the meantime, we can develop strategies to get the most of our hardware and this is what this chapter is about.

To get started, FS2020 rendering depends on 3 factors:

a) Render Resolution (FS2020 Graphics Settings | Render Scaling)

This is the real number of pixels the simulator is drawing every frame. This is also the reference to which FS2020 is rendering EFIS screens: the higher the render resolution, the more pixels and better legibility. It has less impact on other graphics features such as knobs, buttons, levers or analogue gauges because these are usually larger than their equivalent representation in a virtual EFIS screen.

b) Post-Process Resolution (OpenXR Custom Render Scale)

This is the real number of pixels the simulator is presenting the views in the headset every frame. When the render resolution is lower, FS2020 is enlarging the pixels to fit. It is important to note the OpenXR driver will be processing images at the OpenXR render scale. The larger the scale, the heavier the motion reprojection computations for example.

c) Post-Process Filtering (hidden setting in the UserCfg.opt file)

This is the technique used to convert the lower res. render into the higher res. display. Please note FS2020 is using the CAS Shader. In most cases you shouldn’t disable it in VR on the contrary. In effect, “CAS” means Contrast Adaptive Shader and it is sophisticated and efficient shader code capable to almost “create” new pixel when enlarging the images from render resolution to post-process resolution and can be used to our advantage.

Strategy

Balancing visuals and performance consists in pushing FS2020 to rendering up to the limits of the hardware, and then displaying it as if it was a higher resolution image. However, because FS2020 is using the render resolution as a reference for the EFIS resolution, there are different strategies to use depending on the type of aircraft gauges and the expected visuals.

In order to approach this, I’ve first adjusted FS2020 settings in order to get a solid basis capable of rendering near the G2 native resolution of 2160x2160 pixels at 30fps with a good tradeoff between important visuals for the pilot and agreeable rendering effects for the view. I’ve then tried nearly all combinations of resolutions with GA analog, GA EFIS and Airliners in order to find the ones capable of sustaining the rendering resolution while maximizing the perceived visuals in the headset.

From all the possible combinations, only a few are sufficiently remarkable for the hardware I’m running and I believe, given their inherent resolution ratio properties, they are most likely the only one you might want to consider whatever your hardware. These are also working really well including dense photogrammetry regions in most cases.

Recommandation

I’m recommending the following render scaling settings:

FS2020 OpenXR Comments
TAA 70% SS 70% Well balanced gauges and external visuals with solid fps
TAA 80% SS 60% Best for Airliners where EFIS sharpness is more important than external view
TAA 60% SS 100% Best for analog gauges GA aircraft with super detailed outside view.

Please note: these are selected to match the unique G2 resolution and might not always apply to other headsets. TAA ## means FS2020 Render Scaling, SS ## means OpenXR Render Scale.

NB: It appears the CAS Shader is giving the maximum pixel/perf ratio around 70% and this has been one of the driver for selecting these combinations.

Tip: The key to EFIS legibility is the TAA ## value. However this also depends on the distance you’re looking the EFIS at. For example, you’d need a minimum of 70/70 for the A320 and 80/60 is better, however, with the Citation you can get enough resolution with 60/100 because screens are larger and closer.

Tip: If you’re flying in less dense areas, or your hardware gives you enough room, I’d suggest you settle on one of these ratios for the aircraft you’re flying and raise only the lower of the values by 10%. For example, flying the A320 over Hawaii, you change from 80/60 to 80/70 instead. Conversely, flying a light GA you change 60/100 to 70/100 instead. Other combinations are not worth it both in terms of visuals and performance.


VR Graphics Settings

The general approach I’m choosing to configuring FS2020 is to identify the settings I consider essential from a pilot perspective (like windshield effect, gauge refresh rate, anisotropic etc…) and set them to a certain acceptable value performance wise. In addition and specifically for the G2 and its higher panel resolution, it is paramount I balance the settings so that I can push as much pixels as possible so that the picture quality is the highest. From then, I can adjust the others so that they fill the frame budget GPU and CPU wise without overflowing. These settings are comfortably able to push near 2Kx2K pixels at 30fps.

These settings are trying to maximize visible range, legibility and the information most important to the pilot, while not sacrificing fps but I’ve also chosen some of these in order to make it simpler adjusting further for your systems and on your flight conditions (see comments below). They are providing a solid base when using either GA Aircraft or Airliners, whether in rural and empty regions or a major Airport.

NB: most test flights were conducted mostly with the DA40 with Garmin EFIS over the Los Angeles region with photogrammetry and multiplayer. If you’re mainly flying in sparse areas or analogue GA aircraft you can certainly raise some of the graphics settings for better visuals, starting with Terrain LOD and Clouds, followed by Ambient Occlusion and Reflections.

Comments:

The main driver for these settings is maximizing what is important from a simmer perspective visually. Some of the settings are really impacting the fps a lot and must be tuned down in order to give enough smoothness on this hardware but some others can be bumped up without too much differences. However there are a number of settings which I find paramount and I’d rather trade others.

For example, higher anisotropy is helping rendering better looking textures in the distance and therefore is helping the pilot spotting important features like VFR landmarks and/or distant runways. Similarly Windshield Effects is much better in HIGH when you’re flying under rain (breathtaking experience in VR!).

Glass Cockpit Refresh Rate HIGH is helpful for two reasons: first it gives enough EFIS update rate which is necessary for the pilot detecting “trending” changes when needles are moving for example. But it is also mandatory because otherwise, because FS2020 is refreshing EFIS every other frame(s), it is causing stutters (see my detailed post about this).

On the other hand, Bloom is really a matter of taste and is taking some fps but not much. Similarly you can use Shadow Maps 1024 or 1536 without much fps difference (the later gives much better aircraft ground shadows under the wings) but I’d rather leave some room and use a slightly lower value. I wish I could push Volumetric Clouds higher but MEDIUM is surprisingly giving a nice experience in VR (depending on the whether conditions of course).

Custom Adjustments:

Flying in VR with this hardware is finding a tradeoff between visuals and performances. Therefore more often than not you’ll be chasing the best fps and you’ll be adjusting the settings to reach this goal (you can’t beat that!). Although most settings are impacting the final fps to different degrees, there are also a few most important above all others: Clouds and Terrain LOD.

In addition, FS2020 VR seems to be affected by CPU bottlenecks more than in 3D. It is important to understand raising the Glass Cockpit Refresh Rate is demanding more CPU, but raising Terrain LOD or Buildings and Trees is also demanding more CPU (so it seems).

After having conducted a lot of comparative tests with different aircraft and sceneries, I’ve came to the conclusion the best approach to me would be to settle on a baseline upon which I could adjust with limited efforts the overall fps while flying. This requires having a baseline which at least is nearly stutter free and my experience in the simulator is showing the settings shown above are delivering.

In order to stay under the hardware limits and experience stutter free flying while having some room for adjusting graphics depending on the conditions, it is easier to use a good enough baseline working in most cases and just have to bother with a couple settings only. For example when using these settings with a GA aircraft over a rural area I could raise Clouds to HIGH. Conversely flying an Airliner in a busy international airport, I would reduce Terrain LOD to 50% and eventually lower Clouds to LOW. In both cases I’d get solid fps overall and solid visuals because the other settings are visually enough while sparing some resources I can use for Terrain LOD or Clouds.

Graphics Settings PC/VR

There are two separate categories of graphics settings: PC and VR.

You can switch between the two categories and change settings from any mode:

fs2020_settings_pcvr

Tip: Don’t forget to also set FS2020 Graphics Settings (PC) | V-Sync : OFF. It seems if any VSync is enabled in NVidia, 2D or VR settings, your HMD rendering will be limited to your monitor refresh rate (thanks @CodeLoran69 for this).

Graphics Settings Backup / Restore

Should you want to experiment with my settings but you’d like to keep a backup copy of your own settings, the Graphics Settings are saved in a json file here:

Microsoft Store Version

C:\Users\your_login_name\AppData\Local\Packages\Microsoft.FlightSimulator_#############\LocalCache\UserCfg.opt

Steam Version

C:\Users\your_login_name\AppData\Roaming\Microsoft Flight Simulator\UserCfg.opt

Make a copy of the UserCfg.opt file for backup, you can copy it back to revert the graphics settings.

NB: this file is versioned and a copy for a previous version might not work as-is in a future version. However should you want to restore past settings, the file structure shouldn’t change much and you can always try to manually match the entries from the saved backup with the entries in the current file.


VR Traffic Settings

These are often forgotten but they can have an impact to the overall fps. I prefer more road traffic because it is more immersive and ubiquitous in any city flying, and keep the other to sane minimums in VR for performance reasons (compared to "My 4K Settings). In effect I find these are taking too much CPU in VR and I prefer lowering them a little bit (mostly Aircraft Ground Density for now).

fs2020_settings_traffic_vr_4

Sound Settings

This one is important in VR, at least with both the Valve Index and the Reverb G2: I’d suggest you disable Spatial Sound otherwise it doesn’t sound properly when turning your head.

fs2020_settings_sound_vr_3

In addition you might want to read this:
PSA: Get better engine sounds with the Reverb G2 (and probably other Headsets)


Power Profile

One last item which might prove giving you some boost is using a hidden Win10 power profile:

  • Open a cmd prompt / powershell window and type the following:
    powercfg /DUPLICATESCHEME e9a42b02-d5df-448d-aa00-03f14749eb61

  • Open you Win10 power profile and use the newly created “Ultimate Performance” profile.

PS: use at your own risk, I don’t know whether this is also affecting thermal throttling.


Some Results

Through the lens view in the A320 with the Reverb G2

This is really close to what you can feel in the HMD and this shows how 30fps in a simulator can be smooth as long as there is no stutters and the simulator is delivering a constant stream of images at 30hz.

NB: this though the lens video is not about resolution or image quality, just smoothness.

Just flying

This sunset behind clouds was like 10x more intense in the headset:

An amazing feeling looking at the aircraft from the outside:


Additional Comments

Would you be able to explain more why you selected Low Latency to “on”
Comparing Reverb G2 and Valve Index resolution and what does it mean with SteamVR and OpenXR
How does Gauge Refresh Rate is causing more stutters if not set to HIGH
EFIS resolution depends on render resolution, not post-processing resolution.
Why do I prefer 30fps stable with juddering rather than 90fps with motion smoothing
Why I don’t recommend using Process Lasso
How to change Full Screen Optimization for the FS2020 MS Store version properly

NVidia Drivers:
What NVidia Drivers are recommended for VR
Table of NVidia Drivers release notes highlights from 446.14 to 461.09
How to install Nvidia drivers properly when trying out different versions
Known issue: NVidia drivers causing stutters in VR

Windows Mixed Reality:
PSA: WMR advanced registry setting might help getting better performance
WMR Scaling and Dev Tools - Some Explanations
WMR Reprojection, additional thoughts and ramblings
You can use the SteamVR OpenXR driver with any WMR headset

Reverb G2:
PSA: Reverb G2 small sweet spots, observations and solutions

AMD/Intel tips:
Turn off your CPU SMT/HT in the Bios and unleash your VR fps

FS2020:
What is the CAS Shader (info and demo app)
LOD Problems - Description, analysis and solutions


VR Technology Explained

This is great in-depth material which is not just talking about technology:
Advanced VR Rendering with Valve’s Alex Vlachos (slides)
Advanced VR Rendering with Valve’s Alex Vlachos (video)
Advanced VR Rendering Performance (video)

68 Likes
[BUG/FEATURE] EFIS Screens Problems and Solutions for higher legibility
After 15hr tinker my lowly GTX 1080 and HP Reverb performs and looks OK (now) - settings
G2 Audio - Top tip, or I'm an idiot
I9, 3090 32 GB amd G2, RenderS. 50, Dev. 100 and Stutters?
My 2070 SUPER VR settings and suggestions (Index - SteamVR) :green_circle:
[PERF WARNING] B787 is really an heavy aircraft in VR
FS2020 ultra and vr
A VR Success Story- IN PICTURES!
Help, VR not working after uninstalling steam VR & Steam
10FPS with RTX 3080 in VR with Reverb G2. Solutions?
HP Reverb G2
10FPS with RTX 3080 in VR with Reverb G2. Solutions?
PSA: Reverb G2 small sweet spots, observations and solutions
HP Reverb G2
10FPS with RTX 3080 in VR with Reverb G2. Solutions?
PSA: NVidia has found the root cause of stuttering and VR performance in their drivers!
Reverb G2: Native (Microsoft) OpenXR 105.2012.18003 vs. Steam OpenXR - Steam VR 1.15.19 vs. 1.16.3
Although I have a work around, I tried to find root cause on the distortion I see when using SteamVR. Can't figure it out
RTX 3080 performance worse than GTX 1080Ti?
Looking for advice, changing from VR to "not VR" is tanking my framerates
Looking for advice, changing from VR to "not VR" is tanking my framerates
VR Question - What is the best VR Headset for FS2020?
So it's fair to say...You really can't play VR unless you have a top of the line PC
Version 1.12.13.0 Significant loss of performance
So it's fair to say...You really can't play VR unless you have a top of the line PC
VR vs Quality Sacrifice
My 2070 SUPER VR settings and suggestions (Index - SteamVR) :green_circle:
Very poor perfomance in VR mode
Looking for succes stories on high end hardware
A Bass-Ackward way to get great settings, fast!
Clean install display drivers massively improves VR performance!
My settings with mid-range Hardware and HP G2!
Nvidia Driver Confusion
Upgraded to RTX 3090
Made a discovery about supersampling last night! There IS a difference between what in-game rendering scale and steamvr/oculus etc's SS does
100% vs 60% Render Scale
G2 and OpenXR Developer Tool
About to jump into the VR pool; which kit is best, please?
Could not be more disappointed with VR with a RTX 3080 & R9 3900X
How does VR look like on the GTX970 during a group flight with ~60 people?
What software do I need for Quest 2?
[VR] Black flickering borders in Reverb G2 (when turning head)
WMR | How to Enable Motion Reprojection/Smoothing?
I Want the Best of Both VR Worlds - Ground and Air
HP Reverb G2 blurry Image & Poor Performance 3090
Stuttering Fix?
My 2070 SUPER VR settings and suggestions (Index - SteamVR) :green_circle:
So it's fair to say...You really can't play VR unless you have a top of the line PC
Blurry cockpit letters with Reverb G2
WMR Scaling and Dev Tools - Some Explanations
Sometimes, it feels good not tweaking and just flying!
My 2070 SUPER VR settings and suggestions (Index - SteamVR) :green_circle:
First time user of MFS with Rift S - performance is very poor
Often asked, unclear answers, here are the answers: MS Store to Steam
Reverb G2 Sweet Spot Discovery
Performance drop 15-20% after World Update 3 (1.13.16.0)
MSFS and OpenXR rendering scale: impacts and dependencies
I7 10700K + 3090 RTX + 32 GB ram = 10 fps on menu / HP Reverb G2
Suggestions for Ghetto RTX 3090 Laptop Platform
HP G2 Reverb
New Rig with RTX 3090 and Reverb G2 need settings advice

[Update 02JAN2021 - Settings for Motion Reprojection]

This is my first update to this post after having spent quite some time trying to find the best way to enabling motion smoothing / reprojection in a satisfactory way. I’ll post here my initial findings so that you can try repro on your end and see if this is consistent, and I’ve tried to keep it simple too but there are a few gotchas.

Introduction

Although motion smoothing / reproj. is effectively creating new frames by interpolation of the previous ones, and it is effectively given a fluid look and feel, it is not without its own issues which are visual artifacts around or behind anything moving fast, and it is also taking some computing resources. In other words if you’re using your system at its higher limit and get 30fps without, you’ll have to lower some settings to give room for the extra computation, but not much (see below). There is also a bug in FS2020 where it is consuming a lot of CPU time for nothing and this is directly affecting the frame budget for WMR reproj computations (I never had any problem when experimenting with my non-reproj. settings above, and this bug only exhibited today - I don’t know why exactly but I have some ideas). In addition, I’ve was suspecting WMR is using some timing info in order to properly project the new frames and the NVidia CPL settings must have a strong influence. My experiment is confirming this.

Summary

Start with the exact settings as “My VR Settings - G2” above then change the following only to get started:

  • NVidia CPL:
    Low Latency OFF | Threaded Optim. OFF | Vertical Sync OFF
  • OpenXR Dev Tools:
    Render Scale 65% | Motion Reproj. AUTO
  • FS2020:
    Terrain LOD: 50% | Render Scaling 60% | (Clouds LOW if needed)

NB: NVidia CPL settings are applicable to anyone but the Render Scale values are working great and meant for my test system only (9700K+2070S). What is important is freeing the resources WMR Motion Reproj. is consuming (see below) and this depends on your combination of CPU/GPU, but these recommendations should give you a good starting point.

Explanations

NVidia CPL settings are also very important. I’ve tried nearly all combinations and this is the only combination which is working with steady fps with OXR Motion Reprojection on my test system using driver 457.30.

OXR Render Scale is helping a lot reducing GPU resources because WMR reproj. is extrapolating frames from the final display resolution (you might be fine holding up higher values with a 30xx but it goes hand in hand with FS2020 Render scaling too). In addition, I can’t use lower than 65% because of a bug in OXR v105 (distortions).

FS2020 Render Scaling is keeping the 2070S at the limit of rendering about 1500 x 1500 pixels per view where it is fine with reproj (with OXR Scale 65%). It is not the best visual experience but it is a mid range card by today’s standards. In practice, with the A320, I just need to seat a little bit more forward to read the PFD ok. With analogue gauges it is less of a problem. FS2020 Terrain LOD on the other hand is helping freeing just the amount of CPU resources I needed for reproj.

FS2020 Bug and Workaround

There is a bug affecting WMR Reproj but not directly. In short: FS2020 can be put in a state where the code handling the mouse is sucking out the remaining CPU time (or lots of it), and because FS2020 is taking too much and unnecessary CPU time it doesn’t leave enough for WMR Reproj.

However you can mitigate this: start FS2020, select your flight (can be engine started on RWY or Cold & Dark doesn’t matter), once it is displaying “Fly Now” just click once and touch nothing else but CTRL+TAB to enter VR mode.

Otherwise if you do use the mouse in 2D view (could be just by pressing the left mouse button too long or right clicking the window, or something else), there is a greater chance once in VR you’ll get stutters and other problems and you can’t get rid of it even in returning to the main menu and selecting another flight.

Please note I’ve also observed another bug with OXR and/or FS2020 VR mode where WMR was having a hard time with frame sync, but in this case exiting VR mode, closing WMR portal, then re-entering VR mode was solving this always.

What to do if you get stutters (mouse bug)?

The workaround is quite simple in practice and you’ll see it in my screenshot below: open a popup window you won’t probably use much (I’ve put the checklist window) and reduce it size and depth to put it on an empty place on the panel it won’t bother you. Then just leave your mouse over it and wait the cursor disappear!

Anytime the mouse is over the popup windows you get full perf. Anytime it leaves the window and you have the mouse bug, it will drop frames like -30% or so and loose reprojection mode. In practice you use the mouse when you need it and when done just take the habit to put the cursor back over the popup window and wait a few sec for it to disappear (or middle click over the window area and it disappears right away).

NB: you don’t need to use the workaround every flight. Instead, at the beginning quickly check if there is a reproj. problem or not and if there is none at the start you might be safe during all your session. You might want to fly for some time with the OXR Dev Tool “Frame Timing Overlay” and get used to detecting when it is stuttering because it is loosing motion reprojection (indicated by color and info in the overlay). After a few flights you should be accustomed to the typical symptoms so that you no longer need the overlay.

[update on the mouse bug workaround]

Well it seems it is not always working reliably and sometimes there is no other way than exiting the simulator (not even exiting the flight and restarting it from the map page). I’ve had mitigated successes in opening the settings popup in VR (ESC) and waiting about 15 to 30 sec but not always. It is quite annoying when it does.

Here is a screenshot of WMR Portal view when flying toward SFO with today’s live weather an hour ago:

Please share you feedback in the discussion!

7 Likes

These work great, thank you so much! And you’ve proven me wrong – reprojection really isn’t necessary as long as framerates are consistent, and I don’t try to prove a point by moving my head around quickly.

So here’s my technical question: I have an RTX 3080 (which should be about twice as fast as your 2070 Super?) running on an i7-8700. With precisely your settings, I get a perfectly consistent 32-37 fps (according to Afterburner) and a very smooth experience.

Meanwhile, my GPU is consistently utilized at no higher than 60%, and CPU1 hovers between 45% and 55%. All other cores are even lower. What’s the technical explanation for that? Anything I’m doing wrong?

Thanks!

Thank you very much for this amazing analysis. Great reading here in Poland at 1:20 a.m. Fortunately I have an off day from the office tomorrow (or should I rather say today?).

  1. Assuming my 3070 will allow this, for VFR flying in steam gauges-based C172, with the target of 30 FPS, are there any benefits of going above TAA 70%, SS 100%? Are the proportions of these values preferable?

  2. Should I aim at 30 FPS (90Hz/3) by increasing some MFS2020 graphics settings or should I go for higher FPS in the 35-40 range?

Been waiting for this, thanks man, so much insight! Will we be helpful when I get my G2.

I’m currently on a Rift S and running 40 frames more or less locked, so 80 with reprojection. The artifacts are minimal and it runs really well. Do you think the G2/OpenXR reprojection is a lot worse than Oculus’s?

If it works as well, I’d still use it for a smoother feel. But if it’s a lot worse, I may have to disable reprojection for the G2 as you recommend. I’m guessing it’s worse si ce you seem so against it.

1 Like

Thank you all for your kind words!

@CurdledTree18 The reason, most likely, is one waiting for the other. I’ve commented about this here:
FS2020 is not using all the GPU and CPU power in VR - Could this explain the low performance?

This also means you most likely have some room to increasing a few settings up. I’m managing to raise Terrain LOD to 150% with the 2070S and with some aircraft for example.

@stekusteku Actually there is little gain above TAA 70%, and if you have really enough room, you might prefer TAA110% (or even 120) and SS50. These are giving the best visuals in the cockpit and enough details outside (but not too far in the distance). Otherwise, keep 70/100 but raise other settings like Terrain LOD to 150% or Clouds to HIGH.

@AridTurtle39400 I believe motion reproj./smoothing ranks like this (best to worst): Oculus, WMR, SteamVR. It is true when it is working properly, it gives a feeling of presence. However I personally find it gives an artificial look as well, pretty much like the Sports Mode on the TV with a movie. I whish there would be a way to eliminating juddering without the wobbling but we’re not there yet.

1 Like

Thanks @CptLucky8 for these detailed posts. I thought I’d leave some thoughts here that could be titled “What I wish I’d known before trying to read CptLucky’s performance posts”

One thing I’d like to reiterate is that while it’s fine to just read this post and use it as a starting point or even your settings endgame so you can just get flying, it’s good to remember that this has all be tuned to one user’s specific hardware, and a little bit of your own research can go a long way.

If nothing else, it’s helpful to know about the Developer option in FS2020 and the FPS option you can turn on in those tools. The graph it puts on the screen will show 3 important things:

MainThread frametime
RdrThread frametime
GPU frametime

MainThread frametime is your “CPU time”. FS2020 is very, very heavily CPU bottlenecked. ESPECIALLY in VR.

RdrThread is, well, the render thread. Arguably the one users have the least control over. It just is what it is. There is a clip from the FS2020 developers saying that a migration to DX12 wouldn’t be an all-encompassing performance fix, it would really just help if you are RdrThread bottlenecked. Which is not that rare in VR, apparently.

GPU frametime is how long it takes the GPU to draw each frame. In just about any game that’s not FS2020 above 1080p resolution, the GPU frametime is always going to be the bottleneck.

It’s good for people to understand that for each frame, each of these 3 things takes time to do its work, and the only time that matters is the longest of the 3 for any given frame. This is the definition of a bottleneck, and at the top of the performance overlay, it will say “Limited by MainThread|RdrThread|GPU”

Cpt is pretty brave running a G2 on a 2070S. If you have a 2080, 2080S, 2080Ti, 3070, 3080, or 3090, then you may be overoptimizing, meaning that your GPU is NOT the bottleneck and you could potentially crank settings up more. Maybe a lot more, without losing a single frame. In VR, it’s super easy to be limited by the MainThread or RdrThread. Most of the FS2020 graphics options are going to affect GPU time more than the other 2 threads, so feel free to crank up those options UNTIL the performance overlay shows that you’re actually “Limited by GPU”

Next, having thrashed on this since the day of release of the patch, I’d argue that reprojection is a personal taste thing. You trade smoothness for some visual artifacts, and to be honest, I still go back and forth depending on the day. Often the visual artifacts are barely noticeable and the motion smoothing is a godsend to the brain.

Also, (someone please correct me if I’m wrong) I believe VR headsets are ALWAYS going to be v-synced, regardless of how much you tweak your graphical settings. Sure, it’s good to have v-sync turned off to prevent weird anomalies, but if you’re running a G2, you are going to be seeing 15, 30, 45, 60, or 90 frames per second in your HMD, period.

I’m running a 5950X and a 3090, and even turning the graphics settings to absurdly low settings (thus removing the GPU from the equation), my 5950X still can NOT hit a reliable 45 fps at all times in FS2020. It can in non-VR, but not VR. To be honest, this is kind of garbage, and I’d argue that the developers need to look at this, even if it means adding options to sacrifice flight model accuracy. 30 fps in VR is rough, there’s just no way around it.

Again Cpt, thanks for this post. I will go do some further experimentation. I’m still not totally sold that motion reprojection is just plain bad. I also haven’t seen any negative effects from HAGS and/or Game Mode. I will turn them off again and play some more.

Like all 3000-series GPU owners, I eagerly await a driver resolution to the well-documented VR issues. That said, I’ve done excruciating testing on my end and seem to be mostly unaffected by the issue in question. I’m seeing a dropped frame every 2-3 minutes in fpsVR in HL:A, which is not really worth writing home about.

4 Likes

This is fantastic, thank you for this @CptLucky8,

I’m missing Low Latency Mode in my Nvidia CPL, why would that be?

Thanks

@cymantix I believe resistance is futile (can’t resist) :joy:

Having said this, the in-game fps window is only giving you the game view of performance, not the VR view. I’ve been doing a lot of investigations and I can assure you the reasons for lower than expected performance on the hardware is not just the simulator code, but also and maybe as importantly the VR driver.

I’d suggest you review this for example:

comparing frame timing from reference (steady flight) and turning flights when selectively enabling Win10 Game Mode and/or Win10 HAGS (Hardware Accelerated GPU Scheduling)

NB: it is with SteamVR prior 22nd release but it is showing some really interesting intra and inter frame behavior which could be attributed to WMR OXR driver or FS2020 itself. Alex Vlachos videos are explaining the technique they had to use in SteamVR in order to “trigger” the right moment for submitting and this is “voodoo science”.

Otherwise you are right: these are base settings giving you a comfortable experience for a given hardware (listed in the post). Should you have a more capable hardware, please do raise the settings you’d like. My personal short list is increasing Terrain LOD to 150% first, Clouds to HIGH second, which are probably the only 2 worth considering from a pilot perspective. The rest is mostly cosmetic yet agreeable.

As for the VSync you are right. However, there are oddities I’ve commented on in “My VR Settings - Index” discussion. For example, I was at one point capable to pushing to 42fps with the Index. In setting the headset to 90Hz, the implementation (FS2020? SteamVR?) was locking the HMD to 30fps (the closest to 90/3). In just changing the headset to 80Hz (you can with the Index) it was automatically locking to 40fps and it was really neat. However sometimes it was instead locking to 22.7 (90/4) even if set to 80Hz. This is typical to me of a mis-predicted “present view” timing.

@Aniol1349 thank you for your kind words!

Please make sure to review your global settings and see whether you’re using one which is different than mines (they are displaying as non-bold in my screen shot). It is possible when setting one of these globally, it is removing the “Low Latency mode” because it would be irrelevant.

I’m using the 457.30 driver with my RTX 3090. Is that not supposed to be possible or do I still have VR bugs even with this preferred driver?

I checked all settings and everything is set as on your CPL, I had the Low Latency setting in my CPL before rolling back the driver.

Following your guide I’m getting around 30ish fps but still some stutters unfortunately, maybe the Low Latency is the missing link for stutter free experience

also, I’m getting 10 fps in 2D view, WMR minimised

amazing, to pile on to everyone else here - thank you @CptLucky8. I don’t know how you have the time or the patience to figure this out between your many posts but it’s greatly appreciated. Your tips took me from unplayable to near perfect. (i7 10750H, RTX2070M, 16gb ram, G2)

Also, looking forward to RXP on MSFS2020, whenever that may be :slight_smile:

2 Likes

@uncmonkey Thank you for the note, it is a typo (now corrected). I’ve otherwise posted the full matrix of minimum driver versions per card type here:
What NVidia Drivers are recommended for VR

This is only the 3060 which requires a newest driver than 457.30!

@Aniol1349 You might want to cross check whether you also have a newer NVidia CPL in the Microsoft Store app? Please note it is not recommended to “roll back” NVidia drivers (per NVidia docs). Only install over whatever version.

As for the 10fps in 2D view, you have to close WMR Portal and this is documented in the FS2020 release notes.

@DentingMantis91 Thank you for your kind words! Your system is close to my test system and I’m glad this is working for you too.

As for the time? well, given Asobo is not giving me the tools to bring you the RXP GTN and RXP GNS to FS2020 :face_with_symbols_over_mouth:, I’ve a little more time flying and experimenting with the G2… I thank you for your support!

2 Likes

Thank you very much for your research and effort! I’m still not very happy with my 3080 / 3700X / 64 Gb RAM results, but I got them to at least playable level, thanks to your research in part (a big part). A few notes that some may find useful:

  1. It is crucial to set your display to “Best visual quality” in WMR portal. I set it to “performance” and got a blurry mess at all settings, even as SS100 / TAA100. It looked very bad, even the menus and everything in flight. I thought that this is worse than my Rift S, so why did I get G2 for this? But then I noticed this setting and changed it to best visual quality and it’s a night and day difference. Everything is so much clearer.

  2. I had random USB-related HMD disconnects - blue screen, audio stutter then reconnects in game usually but tracking craps up. And it happened often. My ASUS Prime x570 chipset motherboard has this known problem with x570 - it doesn’t recognize G2 in any USB port. The only solution is either a PCI USB 3.0 card (which I bought), or a powered USB 3,9 hub (works with my monitor bilt-in hub, but I got the card anyway). But The blue screen disconnects happened even on this card and on the monitor hub! I found that the only thing that cures it is changing all BIOS PCI settings to GEN3 from GEN4 in advanced settings. Even if a single one (for a GPU slot or any PCI slot) is set to GEN4 - I got the blue screens again, even if the setting is for an unrelated slot (not GPU and not USB card). I read about this solution form the x570 chipset not recognizing G2. It doesn’t help my system to recognize G2, but it does help with disconnects, apparently. I spent hours on figuring this one out.

MFS is now playable in lessons, but I haven’t tried the heavy photogrammetry areas and airliners. Will keep experimenting. G2 really brings my 3080 to its knees… Need better performance. I’m overclocking my 3080 by +200 memory, +160 core, +50 voltage and max power/voltage.temp limits. Custom curves to bring it to 100% if it gets hot. Max peak power consumed is a whopping 420W. 3700X is overclocked to 4.3Ghz and liquid-cooled. Everything is rock-solid and stable, but the result is still barely acceptable even in training on 152. FPS is hovering somewhere in high-20 area, occasionally hitting 30.

1 Like

I have a 3080 too; it’s more than capable of hitting 45 fps and above in training. I can even dial up quite a few settings from Captain’s baseline and low-fly NYC at night.

Can you please post all your settings? Including driver version, OXR settings, MFS settings etc? I’m not sure what can be wrong with my system or settinngs to not get the same results. And I do have one of the better 3080s supposedly: EVGA FTW3 Ultra, higher clocked and better binned then most… I wonder what can be wrong… I’ve never seen anything above 31FPS.
Also, what do you use to measure FPS - dev mode counter is not visible in VR

1 Like

Thx for your advices but I always ask myself why should I invest so many times to tweak the sim. I expect in future that this is the work of Microsoft and asobo. I’m afraid thats the same development behaviour like 20 years ago in fsx or fs2004. In that times I had more time and I was younger​:joy::sunglasses: okey I will try to tweak your advice with the driver and graphic settings but never at registry.

regards

My specs
I9900k
Nvidia 2080 super
32 gb RAM

1 Like

Regarding CAS do you mean “Enabled 1” in UserCfg.opt, section “GraphicsVR”, subsection:

{PostProcess
	Enabled 1
	EyeAdaptation 1
	ColorGrading 1
	Sharpen 1
	Fringe 0
	LensDistortion 0
	Dirt 0
	LensFlare 0
	FilmGrain 0
	Vignette 0
	LensBlurMultiplier 1.000000
	FringeMultiplier 1.000000
}

@CptLucky8 Thank you for your effort. It’s highly beneficial and appreciated.

Regards,
G

1 Like