Pavlov VR Performance Guide 29.1

Did you need performance settings for the Pavlov VR 29.1 update? Then you are in the right place! In this Pavlov VR Performance Guide 29.1, you can find detailed information about the current performance settings for the 29.1 update.

This is the guide calmlikeabomb and 1 collaborators it was created by. You can find the author’s link at the end of the guide.

Pavlov VR Performance Guide 29.1

This guide may eventually be out of date, because this game is early access. This is the Pavlov VR Performance guide 29.1, the current version of the 29.1 update.

SteamVR Pavlov VR Performance Guide

Prerequisites

  • updated drivers
  • updated steamvr (dont use the beta, unless your hmd or operating system requires it)
  • updated vr devices (steamvr should tell you if there are updates; see steamvr -> devices)
  • avoid multiple monitors if possible
  • avoid high resolution monitors (above fullhd, like 4k) if possible
  • avoid ultra-wide monitors (32:9) if possible

SteamVR Config File

…is located there:

C:Program Files (x86)Steamconfigsteamvr.vrsettings

…and the relevant parts of this config look like this:

{
“steamvr” : {
“enableHomeApp” : false,
“preferredRefreshRate” : 144,
“supersampleManualOverride” : true,
[…]
},
[…]
“steam.app.555160” : {
“additionalFramesToPredict” : 0,
“framesToThrottle” : 0,
“resolutionScale” : 100
},
[…]}

these settings in detail:

  • enableHomeApp -> if its running in the background, it needs resources
  • preferredRefreshRate -> the refresh rate of your headset (i use 144 there)
  • supersampleManualOverride -> controls wether the base resolution for steamvr (including all games started “within” it) is set manually or automatically; to have better control over individual games resolution one would set this to true and configure game-specific resolutions later on
  • additionalFramesToPredict -> more of those require more resources (usually 1 is the baseline by the graphics driver, which is what you want, so the setting right here should be set to 0) and they usually dont help visual quality
  • framesToThrottle -> throttling means giving up performance, so this should be set to 0
  • resolutionScale -> thats the game-specific resolution mentioned in supersampleManualOverride; as of right now this setting doesnt seem to actually improve visual quality in a meaningful way, but it does require more gpu power if set higher; default is 100, so this is what you want to begin with, maybe change later.

Pavlov VR Config File

…is the only way to configure some parameters (because they are simply not available in the in-game settings menu), but these are not relevant for this guide.

the config file is located there:

C:UsersAnonymousAppDataLocalPavlovSavedConfigWindowsGameUserSettings.ini

…and the most relevant parts look like this:

[…]
PixelDensity=1.000000
[…]
ResolutionSizeX=1280
ResolutionSizeY=720
LastUserConfirmedResolutionSizeX=1280
LastUserConfirmedResolutionSizeY=720
[…]
FullscreenMode=1
LastConfirmedFullscreenMode=1
PreferredFullscreenMode=1
[…]
DesiredScreenWidth=1280
DesiredScreenHeight=720
LastUserConfirmedDesiredScreenWidth=1280
LastUserConfirmedDesiredScreenHeight=720
[…]
[ScalabilityGroups]
[…]
sg.AntiAliasingQuality=3
sg.TextureQuality=3
sg.EffectsQuality=3
[…]

…and the config is telling the truth:
it prefers to be run in fullscreen (exclusive fullscreen, not borderless windowed) and with the given “hd-ready” resolution. make sure those values are the same in your config file.

PixelDensity and these parameters below ScalabilityGroups represent the graphics settings that can also be found in-game in the “video” settings tab (but the ScalabilityGroups ones wont be set, unless you changed them). these ScalabilityGroups-parameters take values from 0 to 3, with 3 being the worst performing/best looking option. PixelDensity refers to pavlov’s own resolution setting. more on this later (see section “Getting Performance”)

another way to achieve fullscreen (without tampering with the config file) is to set “-fullscreen” as a start parameter for pavlov vr via steam (right-click pavlov vr -> properties -> general -> launch options; see image).

SteamVR Pavlov VR Performance Guide

a third way to achieve fullscreen (without tampering with the config file and without start parameters) is to press ALT+ENTER while the pavlov vr window is in focus, which should make it switch between windowed and fullscreen. once its fullscreen simply exit the game. with every regular exit the current configuration is written to the config file as LastUserConfirmedX/LastConfirmedX. this should make it so pavlov vr always starts in fullscreen and with the last given resolution.

some additional parameters that will impact performance:

[…]
bForceNoPostProcess=True
bUseAudioThread=False
GoreLevel=Gruesome
MovementVignetteIntensity=0.000000
bUseVSync=False
bUseDynamicResolution=False
[…]

…but i DID NOT TEST all of them. can only recommend to use the values shown here because its what i use while not aiming to maximise performance. lowering the gore level should positively impact performance for example.

DirectX12 Startup Parameter

for whatever reason pavlov vr seems to have issues with directx on some systems. im not entirely sure whats the specific cause, but i found a solution that seems to be working for other people as well.

i recommend to set “-dx12” as a startup parameter (right-click pavlov vr -> properties -> general -> launch options; see image), even if the game should use dx12 (over dx11) anyway afaik.


SteamVR Pavlov VR Performance Guide

Getting Performance

…obviously comes at a cost, but of course not all measures are weighted the same or have the same impact on visual quality.

if you followed this guides sections so far, all the relevant parameters (apart from your headsets refresh rate if it supports multiple) can be found in pavlov vr in-game (or in its config file). so lowering these values should do the trick, if needed:


SteamVR Pavlov VR Performance Guide

as a last resort option – if lowering the parameters available in-game doesnt “give enough performance” – one would reduce the game-specfic base resolution set in the steamvr config file for pavlov vr, but only after having lowered everything available in-game as far as possible/visually acceptable.

Bonus: VR Performance Toolkit

a more universal way (for “most” games using unreal engine) to improve performance is to use fholger’s VR Performance Toolkit, which can be found there:

https://github.com/fholger/vrperfkit

here is the complete install guide for it (just to show thats its really f easy to use):
Extract dxgi.dll and vrperfkit.yml next to the game’s main executable. For Unreal Engine games, this is typically <Game>GameBinariesWin64<Game>Game-Win64-Shipping.exe.

Edit the vrperfkit.yml config file to your heart’s content. The available options are documented inside the config file; you’ll have to experiment with them and try which options work for your particular game.

this is an example of vrperfkit.yml you could use rightaway:

upscaling:
enabled: false
method: fsr
renderScale: 0.9
sharpness: 0.7
radius: 0.9
applyMipBias: false

fixedFoveated:
enabled: true
innerRadius: 0.7
midRadius: 0.8
outerRadius: 0.9
favorHorizontal: true

debugMode: false

hotkeys:
enabled: true
toggleDebugMode: [“ctrl”, “f1”]
cycleUpscalingMethod: [“ctrl”, “f2”]
increaseUpscalingRadius: [“ctrl”, “f3”]
decreaseUpscalingRadius: [“ctrl”, “f4”]
increaseUpscalingSharpness: [“ctrl”, “f5”]
decreaseUpscalingSharpness: [“ctrl”, “f6”]
toggleUpscalingApplyMipBias: [“ctrl”, “f7”]
captureOutput: [“ctrl”, “f8”]
toggleFixedFoveated: [“alt”, “f1”]
toggleFFRFavorHorizontal: [“alt”, “f2”]

Written by calmlikeabomb

Leave a Comment

Your email address will not be published. Required fields are marked *