VR has come a long way since its introduction with 4.37, and a lot of the recommendations/tips/tweaks have evolved.
I thought it worth collating what people know in one place.
Edit - my Docs folder didn’t have the latest docs in, so a lot of the below has probably been covered in much better detail in C:\Falcon BMS 4.37\Docs\01 Input Devices\04 VR Guide\BMS-VR-Guide.pdf
This particular post contains my settings for a Pico 4 + VirtualDesktop + 4070ti, thought most of it holds true for PicoConnect with SteamVR as the OXR runtime too.
Virtual Desktop settings - Ultra (3120x3120), SSW off. HEVC encoder at 150Mbps, VDXR as OpenXR runtime.
C:\Falcon BMS 4.37\User\Config\Falcon BMS User.cfg:
# General VR-y things
set g_fVRIPDMultiplier 0.88 # 112% World Scale
set g_b3DClickableCursorAnchored 0 #No cursor anchor in 2D
# I don't use Mixed Reality
set g_bMixedRealityCockpitCoverEnabled 0
# Cursor follows head in VR
set g_b3DClickableCursorFixToCenterIfVR 1
# Set BMS res to 1.6x base (1.6*(3120x3120))
set g_fVRResolution 1.6
# best performance. Some find setting to 0 helps with black bars
set g_bVRParallelRenderThread 1
# disable render to monitor
set g_bVRNoPresent 1
# VR Performance vs Visual Settings
set g_bEnvironmentMapping 1 # 0 for more performance
set g_bWaterEnvironmentMapping 1 # 0 for more performance
set g_bShadowMapping 1 # 0 for more performance
set g_bShadowOnSmoke 1 # 0 for more performance
set g_bReducePSFires 0 # 1 for more performance
set g_nCloudRotatingMethod 1 # reduce the spinny clouds
# Fixed Foveated Rendering - Pico 4
set g_bVREnableFFR 1
set g_fVRInnermostRadiiFFR 0.55
set g_fVRMiddleRadiiFFR 0.60
set g_fVRPeripheralRadiiFFR 1.00
What else do I think I know?
- Disable OpenXR Toolkit XR layer - BMS will crash
- Disable XRNeckSafer XR layer - BMS seems to crash
- Never ever ever ever change values in Falcon BMS.cfg - always set in Falcon BMS User.cfg or Falcon BMS VR.cfg
- Don’t go over 2x anti-aliasing in the game as this has little visual impact but a lot of performance impact
- Resolution is key to reading stuff. If you can’t see, increase resolution. If it’s a slideshow, decrease resolution until you find a balance
- if at any point you had a config line like this -
set g_sPriorityFixes "all-PFIX_4K_TEXT_AND_CURSOR_USER_DEFINE_AND_APPLY_DPI"
- because the mouse cursor was disappearing in 4.75 initial release, get rid of it. Seems to cause crashes on joining a server, and was strongly discouraged by Max when I had it in my config. - Black bars at sides of view. This seems to still be a thing for some of us on non-PCVR headsets, e.g. Pico/Quest. It’s a thing. Don’t move your head so fast. Or try dropping down your bandwidth usage for VD/QuestLink.
- Can’t see the HUD/radio menus? Drop your visor (Alt-V)
- BMS in VR (and also not in VR) is awesome
With the above, I get 72fps ('cos that’s what I run my headset at; can’t notice any difference at 90fps) ALL the time. Cockpit visuals are lovely, I can read kneeboards (yes, even the teeny tiny WDP font, but I mostly use EZBoards).
The image below was posted on discord by oleuzop to explain FFR:
// Fixed Foveated Rendering
set g_bVREnableFFR 1
set g_fVRInnermostRadiiFFR 0.55
set g_fVRMiddleRadiiFFR 0.60
set g_fVRPeripheralRadiiFFR 1.00
Right, discuss! Tell me where I’m wrong, and we can all try to keep an up-to-date VR guide going.