My 2070 SUPER VR settings and suggestions (Index - SteamVR) 🟢

Forum history is always kept - here’s the post:

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 suggestion (Reverb G2 - WMR)

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!

NB: if you’ve already read “My 4K Settings” and “My VR Settings (G2)”, 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).

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

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

fs2020_settings_nvidia3

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 Valve Index 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. It is otherwise causing lots of CPU/GPU sync problems in VR and it introduces lots of stuttering.

:warning: You must launch Steam Client prior entering VR mode (not SteamVR) otherwise FS2020 will drop every other frame, when using SteamVR 1.15.x and Win10 HAGS ON (this can happen also with HAGS OFF but not as often).

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.

SteamVR Settings

SteamVR includes both its own proprietary API (OpenVR) to communicate with the Index headset, and the SteamVR OpenXR driver to communicate with the application.

FS2020 is using OpenXR (OXR), a VR Application Programming 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.

Once you’re in FS2020 VR mode, you can adjust per-application video settings (FS2020 in the drop down list) and I’d recommend the following to get started:

Comments:

Refresh Rate must be set to 90 when first entering VR otherwise it CTD more often. However once in VR you can change the setting to 80 or 120 live while still in VR. However it seems there is a strong link to 90Hz since FS2020 Update 7 and using any other refresh rate doesn’t always give the expected Hz/2 or Hz/3 fps in the simulator.

Display Brightness is really giving a sense of being outside when set to 160% but FS2020 is overexposing too much and clipping whites. I just use 130% usually in VR (HLA etc…)

Motion Smoothing 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 taking some valuable resources and 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

Custom Resolution Multiplier 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 Valve Index panel resolution is 1440x1600 but because of its lenses design and optical properties, the nominal image resolution an application must render is 2016x2240, which corresponds to 100% Render Resolution in SteamVR.

Tip: I prefer setting my global SteamVR Render Resolution to 100% and then adjust per-application multiplier. This ensures SteamVR will not automatically change my experience and I can get consistent and reproducible settings when changing headsets.

Tip: What counts most is he Final Resolution. This is the number of pixels FS2020 will render for each view:
Comparing Reverb G2 and Valve Index resolution and what does it mean with SteamVR and OpenXR

SteamVR Extras

My settings on the G2 are showing me I can push my test system to rendering 2K x 2K in VR at a smooth and constant 30fps in dense/photogrammetry areas, and higher in sparse areas (try Hawaii for example). My recollection of test flight during the beta also lead me to think there is a problem with the latest SteamVR release and beta versions.

In effect, the main difference between my G2 and Index settings are the Terrain LOD and Object LOD values (50% with Index and 100% with G2). The reason is during my flight tests I’ve noticed, monitoring frame timings using the SteamVR graphs, that during fast turns there was an increasing number of stuttering over photogrammetry areas (testing around KSNA). I’ve attributed this to FS2020 sending large chunks of vertices (geometry) and the VR software stack being held up from processing the frames during this time. In reducing the Terrain LOD to 50% I’ve managed to workaround this to acceptable levels. However, there is no such hiccups with the G2 (at least not as visible).

I was hinted about using another SteamVR version (I don’t remember who, please let me know so that I can credit you) and after trying I do find it is actually greatly reducing stuttering so that I can even raise both LOD settings to 100% most of the time:

  • Open Steam Client, go to Library
  • Right click SteamVR and select Properties
  • Select the Betas tab (on the left)
  • Pickup the following in the drop down list:
    linux_v1.14 - Older build, for Linux users

Steam Client will download this version which will show as SteamVR [linux_v1.14] in the Steam Library list. Although you’re running on Win10, I believe this only means “use the same Windows SteamVR version as the version available for Linux”.

Screenshots comparing the fps overlay bar graphs between linux_v1.14 and v1.15.x

Balancing Visuals and Performance

Although we all wish being able to render FS2020 in VR at 90Hz at full 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 (SteamVR 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 SteamVR will be processing images at the SteamVR 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 optimal Index resolution at 2K x 2K 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 SteamVR Comments
TAA 60% SS 220% Breathtaking visuals and crisp enough EFIS with solid fps (my fav)
TAA 100% SS 78% Best for Airliners where EFIS sharpness is more important than external view
TAA 70% SS 100% Best for analog gauges GA aircraft with good and detailed outside view.

Please note: these are selected to match the unique Index resolution and might not always apply to other headsets. TAA ## means FS2020 Render Scaling, SS ## means SteamVR 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. Thanks to using 78% resolution in SteamVR I can use 100% TAA with adequate fps. This makes EFIS screens readable without the need to lean over much. You might also want comparing the two other variations which are giving similar fps but different legibility. The Index will never reach the clarity and details you can get with the G2 but I find TAA60+SS220 giving the best looking inside or outside the cockpit given the 1440x1600 panels.

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 100/78 to 100/80 instead. Conversely, flying a light GA you change 70/100 to 80/100 instead. Other combinations might not be 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 Index and its average 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.

fs2020_settings_graphics_vr_4

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 and/or Render Scaling to 110% for crispier readouts. 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 good 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 Steam Version

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, or 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

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 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.

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 30 fps stable is better than 40 fps varying
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

SteamVR:
What is the new SteamVR “ADDITIONAL PREDICTION (ms)” value doing?
How to override the SteamVR IPD value
You can use the SteamVR OpenXR driver with any WMR headset
Can I use these settings with the Oculus Quest 2?

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)

maxresdefault
1280×720 78.8 KB

9 Likes