DiRT Rally 2.0 DR2.0 VR performance tuning and visual upgrade mods

DR2 kinda runs like a pig in VR. There's also weirdness with gamma/brightness and things being blurry. Turns out these are largely solved. Between optimizing settings, a mod for brightness and another for sharpness it can look really good in VR and the mods have no noticeable performance hits.

First a guide for gfx settings to get the most out your system. There's guidelines for visuals or performance and explanations of what's being changed. Still relevant despite ui changes since it was made. Not mine but the best I know of.


Eye Accommodation Fix
This addresses the weird gamma/brightness thing that make day/sunset stages in Sweden a white-out despite brightness settings. This works by picking a different target in the fov to base brightness scaling from making it drivable under all lighting conditions like people playing on a monitor get to enjoy.

https://www.kegetys.fi/dirt-rally-2-vr-eye-accomodation-fix-v2-0/

There are separate settings for day/night, fog adjustment parameters and new vegetation shaders that get rid of the dot/grid dithering artifacts. Love the evening gloom and actual lighting variance this mod provides... having to actually turn my headlights on to see better as dusk rules.

I've found the stock settings in the accommodation mod make headlights too dim and canopy covered areas at dusk too dark, but it can be adjusted in the .cfg:

eye accommodation mod tweak:
luminanceMaxRange=1050
luminanceMinRange=600



Contrast Adaptive Sharpening/reshade

This CAS sharpening tool has only recently became compatible with VR. I would have never believed it possible, but it's like putting on glasses you didn't know you needed or running settings on ultra -instruments readable without leaning in, can read signs in the car's mirrors, the mesh windows of crosskarts or chain link fence sharp and realistic instead of a floating blur etc.

The Sharper Eye (CAS sharpening mod)

racedepartment keeps breaking my link so if the one above doesn't work repair this one by removing the spaces in necksismods because for some reason the naughty world filter keeps replacing it with ** https://www.ne xusmods.com/skyrimspecialedition/mods/46999?tab=files&file_id=191435

Technically a Skyrim mod but made to be compatible with most games and works great in Dirt Rally 2.0. It comes with presets for Skyrim so a few values need to be changed to make dr2 colors/brightness look right.

CAS sharpener tweaks:
Brightness=1.000000
Contrast=1.000000
Saturation-0.850000

@obo
made an additional .dll to accompany reshade. He discovered a load order issue with the eye accommodation mod and his dll shim makes them work together, detailed in this post along with a link to his mod https://www.racedepartment.com/thre...-and-visual-upgrade-mods.200905/#post-3372288

If anyone knows of any other really good tweaks or guides I'm interested. Also, if anyone knows of or stumbles on to some particularly good settings for the mods above, or other mods that make the game run or look better please post them here.
 
Last edited:
Wow looks very nice. Now with better graphics the pop in draw distance is pretty annoying as I can actually see so well. Trees and grass on certain tracks appear from nowhere or change resolution. I tried messing with graphics but not even low settings seem to get rid of this behavior. Anyone got a fix for this?

What I think you're describing are the artifacts of the vegetationAtoC working. It looks better but has worse pop in. You can disable it in the .cfg which would leave vegetation as it was but still have the rest of the mod active. No magic solutions to make everything perfect all at once so pick the options with tradeoffs that make the most sense.
 
Thanks for the guide you guys put together, it really helped getting DR2.0 looking good and running well.

I haven't seen it mentioned that there's vr upscale solution that works a treat with DR2.0. It has been updated recently to work with AMD and Nvidia, I've gotten great results with it. You can change the values in the files as you're playing to see the effects. I've used it on top of the guide in this forum, I Hope it works for you and thanks again for the guide.

VR Upscale: https://github.com/fholger/openvr_fsr
Credit to:
Holger Frydrych
fholger
 
Last edited:
Thanks for the guide you guys put together, it really helped getting DR2.0 looking good and running well.

I haven't seen it mentioned that there's vr upscale solution that works a treat with DR2.0. It has been updated recently to work with AMD and Nvidia, I've gotten great results with it. You can change the values in the files as you're playing to see the effects. I've used it on top of the guide in this forum, I Hope it works for you and thanks again for the guide.

VR Upscale: https://github.com/fholger/openvr_fsr
Credit to:
Holger Frydrych
fholger

Awesome, glad to hear it helped. I've seen FSR/NIS before but haven't tried it yet, it' also made by the same guy that did the sharpening thing posted here.

Have also settled on different settings in the eye accommodation I think than I last posted, but spent a fair amount of time getting it dialed for day vs night to look as realistic as I could get it. I also discovered the game sometimes swaps day for night settings, but luckily the .cfg can be edited on the fly so I congressionally have to tab out and swap the headers for those sets of parameters. Actually got tired of trying to type that much in VR so keep both day/night headers above each set and alter which one is ';' commented out (don't forget to save!) when it's swapped. My day/night settings aren't hugely different but when it loads me at night with it that way it's dismally dark or vice versa stupidly bright. Here's a copy of my current .cfg for it:

Code:
Dirt Rally 2.0 VR accomodation fix config
 by Keijo "Kegetys" Ruotsalainen
 http://www.kegetys.fi

You can edit this file with the game running and the settings will be applied in real time. 
 
[settings]
; Settings this to 1 reduces the display area used by eye accomodation, concentrating more on what you are looking at
overrideArea=1
; Setting this to 1 enables the accomodation override settings in 'accomodation' below
overrideAccomodation=1
; Setting this to 1 enables the color toning override settings in 'colorToning' below
overrideColorToning=1
; Setting (0.0 to 1.0) for reducing haze in for example Finland and Poland. Does not affect denser fog/rain/snow.
hazeReduction=0.5
; Settings this to 1 overrides vegetation shaders to use alpha-to-coverage rather than dithering/alpha testing.
overrideVegetationAtoC=1
; Sun illuminance values used to interpolate between colorToningDay and colorToningNight below
illuminanceDay=40000
illuminanceNight=600

[accomodation]
; Accomodation behaviour settings.
; Game defaults are luminanceMaxRange 1500, luminanceMinRange 600, brightenSpeed 5, darkenSpeed 5
; You can set luminanceMaxRange and luminanceMinRange to same value (ie. 1000) to lock accomodation
luminanceMaxRange=1050
luminanceMinRange=600
brightenSpeed=0.25
darkenSpeed=0.25

;[colorToningDay]
[colorToningNight]
; Color toning settings for daytime, when illuminance is illuminanceDay or above
; Game defaults are around gamma 2.0, saturation 0.85, brightness 1.0, paletteWeight 1.0
gamma=1.3
saturation=1.00
brightness=1.1
paletteWeight=0.25

;[colorToningNight]
[colorToningDay]
; Color toning settings for night, when illuminance is illuminanceNight or below
; Game defaults are around gamma 2.0, saturation 0.85, brightness 1.0, paletteWeight 1.0
gamma=1.6
saturation=.75
brightness=.85
paletteWeight=0.25
 
Hey all, first of all thank you for tips for bringing DR 2.0 playable. Question:
I downloaded kegetys eye accomodation fix 2.0 and it works great and love the results. I downloaded the Reshade from previous page and it doesnt work same time with kegetys in VR. Tried with flatscreen, works. Deleted kegetys eye fix and reshade working then. Anyone have info how to enable them at the same time? Love the results with reshade, some much sharpen image

Heres the reshade


Thanks All

 
Hey all, first of all thank you for tips for bringing DR 2.0 playable. Question:
I downloaded kegetys eye accomodation fix 2.0 and it works great and love the results. I downloaded the Reshade from previous page and it doesnt work same time with kegetys in VR. Tried with flatscreen, works. Deleted kegetys eye fix and reshade working then. Anyone have info how to enable them at the same time? Love the results with reshade, some much sharpen image

Heres the reshade


Thanks All


Correct, a poster in this thread, @obo noticed that as well and made an additional .dll to accompany reshade to deal with this. He discovered a load order issue with the eye accommodation mod and his dll shim makes them work together, detailed in this post along with a link to his mod https://www.racedepartment.com/thre...-and-visual-upgrade-mods.200905/#post-3372288

I haven't tried it with the newer shader but if for some reason you can't get both to work, just use the eye accommodation as it provides more useful function to gameplay and has its own bit of sharpening it does as well
 
Last edited:
Awesome, glad to hear it helped. I've seen FSR/NIS before but haven't tried it yet, it' also made by the same guy that did the sharpening thing posted here.

Have also settled on different settings in the eye accommodation I think than I last posted, but spent a fair amount of time getting it dialed for day vs night to look as realistic as I could get it. I also discovered the game sometimes swaps day for night settings, but luckily the .cfg can be edited on the fly so I congressionally have to tab out and swap the headers for those sets of parameters. Actually got tired of trying to type that much in VR so keep both day/night headers above each set and alter which one is ';' commented out (don't forget to save!) when it's swapped. My day/night settings aren't hugely different but when it loads me at night with it that way it's dismally dark or vice versa stupidly bright. Here's a copy of my current .cfg for it:

Code:
Dirt Rally 2.0 VR accomodation fix config
 by Keijo "Kegetys" Ruotsalainen
 http://www.kegetys.fi

You can edit this file with the game running and the settings will be applied in real time.
 
[settings]
; Settings this to 1 reduces the display area used by eye accomodation, concentrating more on what you are looking at
overrideArea=1
; Setting this to 1 enables the accomodation override settings in 'accomodation' below
overrideAccomodation=1
; Setting this to 1 enables the color toning override settings in 'colorToning' below
overrideColorToning=1
; Setting (0.0 to 1.0) for reducing haze in for example Finland and Poland. Does not affect denser fog/rain/snow.
hazeReduction=0.5
; Settings this to 1 overrides vegetation shaders to use alpha-to-coverage rather than dithering/alpha testing.
overrideVegetationAtoC=1
; Sun illuminance values used to interpolate between colorToningDay and colorToningNight below
illuminanceDay=40000
illuminanceNight=600

[accomodation]
; Accomodation behaviour settings.
; Game defaults are luminanceMaxRange 1500, luminanceMinRange 600, brightenSpeed 5, darkenSpeed 5
; You can set luminanceMaxRange and luminanceMinRange to same value (ie. 1000) to lock accomodation
luminanceMaxRange=1050
luminanceMinRange=600
brightenSpeed=0.25
darkenSpeed=0.25

;[colorToningDay]
[colorToningNight]
; Color toning settings for daytime, when illuminance is illuminanceDay or above
; Game defaults are around gamma 2.0, saturation 0.85, brightness 1.0, paletteWeight 1.0
gamma=1.3
saturation=1.00
brightness=1.1
paletteWeight=0.25

;[colorToningNight]
[colorToningDay]
; Color toning settings for night, when illuminance is illuminanceNight or below
; Game defaults are around gamma 2.0, saturation 0.85, brightness 1.0, paletteWeight 1.0
gamma=1.6
saturation=.75
brightness=.85
paletteWeight=0.25
Thanks for the updated settings @mechsicko , worked a treat!
 
Correct, a poster in this thread, @obo noticed that as well and made an additional .dll to accompany reshade to deal with this. He discovered a load order issue with the eye accommodation mod and his dll shim makes them work together, detailed in this post along with a link to his mod https://www.racedepartment.com/thre...-and-visual-upgrade-mods.200905/#post-3372288

I haven't tried it with the newer shader but if for some reason you can't get both to work, just use the eye accommodation as it provides more useful function to gameplay and has its own bit of sharpening it does as well
Thanks man, downloaded additional .dll and both works at the same time, so happy now! Thanks @mechsicko and @obo
 
I thought I would share my settings after spending many hours trying to find the best look and performance for my system. Maybe someone will have some suggestions on how to improve it.

My specs are:
RTX380
Ryzen 7 3800x @ 4.36Ghz
32Gb DDR4 Ram

I'm using the eye-accommodation fix, reshade sharpen, @obo dll file and the VR upscale.

STEAM VR:
Smooth motion: on
Upscale: 240%
Refresh: 90Hz

VR Upscale:
Renderscale: 0.66
Sharpness: 0.9
Radius: 0.2
applyMIPBias: true
I use the NVidia solution as it looks better.

Ingame Settings:
** Notes
I set the monitor resolution to 400px x 200px to get the most performance and still being able to see the ui. The progress bar will be a little hard to read at this resolution. I use the Steam VR View to share it on desktop when friends come over for some rallying.

Ground cover is set to low with a custom lod value to stop popping in.

The settings below are for best performance whilst keeping visual information that helps with driving. The upscale value can be tweaked based on your system both in steam and in the upscale file, for myself using the settings above the game runs between 8ms to 9.4mns. Anymore than that and it struggles on hairpin turns.

These settings are for rallying, cross rally will need some adjustments.
Documents\My Games\DiRT Rally 2.0\hardwaresettings\hardware_settings_config_vr

XML:
<?xml version="1.0" encoding="UTF-8" ?>
<hardware_settings_config version="25" deviceId="0x2216">
    <cpu>
        <threadStrategy workerMapFile="system/workerMap8Core.xml" forceFeedbackProcessor="6" dvdStorageProcessor="7" dataSetMonitorProcessor="4" renderProcessor="0" updateProcessor="2" fileStreamProcessor="5" />
    </cpu>
    <audio_card>
        <dynamic_range value="high" />
        <eq value="headphones" />
        <voice_chat enabled="false" />
        <push_to_talk enabled="true" />
        <music level="100" />
        <replay_music level="100" />
        <effects level="80" />
        <engines level="100" />
        <speech level="90" />
        <surfaces level="90" />
        <voip level="100" />
    </audio_card>
    <motion_platform>
        <dbox enabled="false" />
        <udp enabled="false" extradata="0" ip="127.0.0.1" port="20777" delay="1" />
        <custom_udp enabled="false" filename="packet_data.xml" ip="127.0.0.1" port="20777" delay="1" />
        <fanatec enabled="false" pedalVibrationScale="1.0" wheelVibrationScale="1.0" ledTrueForGearsFalseForSpeed="true" />
    </motion_platform>
    <physics environmentalDamage="true" vehicleDamage="true" />
    <input device_type="auto" />
    <controls neutralTimeToShift="0.00" />
    <graphics_card rating="1">
        <eyefinity force="" osd="" />
        <stereo enabled="true" separation="0.005" convergence="0.5" />
        <resolution width="400" height="200" aspect="auto" fullscreen="0" vsync="0" refreshRate="60" multisampling="off" supersampling="1" taa="0" />
        <gamma level="1.000000" />
        <hdr level="1.0" />
    </graphics_card>
    <shaders low_quality="false" />
    <textures quality="2" />
    <anisotropic target="16" />
    <shadows enabled="true" size="512" maskQuality="0" particles="false" grass="false" />
    <particles enabled="true" wind="false" dynamicRes="true" lowResScalar="8" nearFadeBias="1" emissionRate="0.25" />
    <weather quality="0" />
    <crowd enabled="true" detail="2" />
    <cloth enabled="true" tessellation="true" />
    <ground_cover clutter="false" enabled="true" lodScaling="0.9" />
    <objects lod="1.0" maxlod="0" stones="false" />
    <trees lod="1.0" maxlod="0" meshes="false" />
    <vehicles characterQuality="1" lodQuality="0" textureQuality="1" />
    <track lod="1.0" />
    <reflections>
        <envmap size="128" quality="0" scaleminsize="2.0" mindistance="0.0" facesPerFrame="3" />
        <ibl probeSize="128" diffuseSize="16" diffuseSamples="64" specularSize="128" specularSamples="64" />
    </reflections>
    <mirrors enabled="false" width="192" height="64" car_maxlod="4" car_culldist="0.0" />
    <skidmarks enabled="true" />
    <dynamic_ambient_occ enabled="true" quality="0" />
    <dynamic_ambient_occ_soft enabled="false" />
    <night_lighting volumes="false" shadows="false" onlyHeadlights="false" shadowSize="1" renderTrees="false" renderVehicles="false" renderOrganisms="false" />
    <anisotropic target="16" />
    <aoit enabled="false" />
    <avsm enabled="true" />
    <postprocess>
        <motion_blur enabled="false" replayonly="true" />
        <god_rays enabled="true" replayonly="true" />
        <chromatic_aberration enabled="true" replayonly="true" />
        <bloom enabled="true" replayonly="true" />
        <lens_flares enabled="false" replayonly="true" />
        <light_streaks enabled="true" replayonly="true" />
        <lens_dust enabled="false" />
    </postprocess>
    <screenspace_reflections enabled="true" replayonly="true" />
    <vr enabled="true" eyeDistanceMultiplier="1.0000" lockedOrientation="true">
        <motion_blur enabled="false" />
        <vignetteless enabled="true" />
    </vr>
</hardware_settings_config>

Once I make changes to the hardware config file it's set to read-only so the game won't change the values.

I hope it's of use to someone else!

** Updated game setting file with improved sense of speed.
 
Last edited:
Wow.... just used the Eye Accommodation Fix and what a diff it makes! Amazing! Just made my day!

So with regards to the second fix, the reshade, can that be done for the Quest 2, or is that just for other headsets that use Steam VR?
I believe it should work with any vr headeset as it effect the game files rather than the vr system.
 
;[colorToningDay]
[colorToningNight]
; Color toning settings for daytime, when illuminance is illuminanceDay or above
; Game defaults are around gamma 2.0, saturation 0.85, brightness 1.0, paletteWeight 1.0
gamma=1.3
saturation=1.00
brightness=1.1
paletteWeight=0.25

;[colorToningNight]
[colorToningDay]
; Color toning settings for night, when illuminance is illuminanceNight or below
; Game defaults are around gamma 2.0, saturation 0.85, brightness 1.0, paletteWeight 1.0
gamma=1.6
saturation=.75
brightness=.85
paletteWeight=0.25
[/code]
Hey mechsicko, thanks for sharing your settings! Until now I am not really satisfied with the nighttime look in VR so I'm looking forward to testing them. I got a quick question to avoid confusion while trying out your settings: Which of these settings are your usual day and night settings? Because the top description says they're the daytime settings but you have colorToningDay commented out.
 
Hey mechsicko, thanks for sharing your settings! Until now I am not really satisfied with the nighttime look in VR so I'm looking forward to testing them. I got a quick question to avoid confusion while trying out your settings: Which of these settings are your usual day and night settings? Because the top description says they're the daytime settings but you have colorToningDay commented out.
Heh, good eye! My *normal day settings are the one with lower brightness and higher gamma and night has lower gamma with higher brightness. The reason there are both day/night statements above each set of parameters is to be able to switch them on the fly more easily, as only 1 is active at a time while the other is commented out.

*DR2 sometimes loads some stages/weather conditions flagged to the wrong set, but since this mod applies in real time when that happens you can swap them instead of suffering through a tedious stage. At first I was typing the whole statements but later just included both to streamline the process. To swap them now, all I have to do is switch the semicolons. I do it all while wearing the hmd, using SteamVR to pull up my desktop and grabbing my wireless kb I keep near my rig.
 
DR2 kinda runs like a pig in VR. There's also weirdness with gamma/brightness and things being blurry. Turns out these are largely solved. Between optimizing settings, a mod for brightness and another for sharpness it can look really good in VR and the mods have no noticeable performance hits.

First a guide for gfx settings to get the most out your system. There's guidelines for visuals or performance and explanations of what's being changed. Still relevant despite ui changes since it was made. Not mine but the best I know of.


Eye Accommodation Fix
This addresses the weird gamma/brightness thing that make day/sunset stages in Sweden a white-out despite brightness settings. This works by picking a different target in the fov to base brightness scaling from making it drivable under all lighting conditions like people playing on a monitor get to enjoy.

https://www.kegetys.fi/dirt-rally-2-vr-eye-accomodation-fix-v2-0/

There are separate settings for day/night, fog adjustment parameters and new vegetation shaders that get rid of the dot/grid dithering artifacts. Love the evening gloom and actual lighting variance this mod provides... having to actually turn my headlights on to see better as dusk rules.

I've found the stock settings in the accommodation mod make headlights too dim and canopy covered areas at dusk too dark, but it can be adjusted in the .cfg:

eye accommodation mod tweak:
luminanceMaxRange=1050
luminanceMinRange=600



Contrast Adaptive Sharpening/reshade

This CAS sharpening tool has only recently became compatible with VR. I would have never believed it possible, but it's like putting on glasses you didn't know you needed or running settings on ultra -instruments readable without leaning in, can read signs in the car's mirrors, the mesh windows of crosskarts or chain link fence sharp and realistic instead of a floating blur etc.

The Sharper Eye (CAS sharpening mod)

racedepartment keeps breaking my link so if the one above doesn't work repair this one by removing the spaces in necksismods because for some reason the naughty world filter keeps replacing it with ** https://www.ne xusmods.com/skyrimspecialedition/mods/46999?tab=files&file_id=191435

Technically a Skyrim mod but made to be compatible with most games and works great in Dirt Rally 2.0. It comes with presets for Skyrim so a few values need to be changed to make dr2 colors/brightness look right.

CAS sharpener tweaks:
Brightness=1.000000
Contrast=1.000000
Saturation-0.850000

@obo
made an additional .dll to accompany reshade. He discovered a load order issue with the eye accommodation mod and his dll shim makes them work together, detailed in this post along with a link to his mod https://www.racedepartment.com/thre...-and-visual-upgrade-mods.200905/#post-3372288

If anyone knows of any other really good tweaks or guides I'm interested. Also, if anyone knows of or stumbles on to some particularly good settings for the mods above, or other mods that make the game run or look better please post them here.
Thank you very much. Now the game is very enjoyable in VR (oculus rift S).
Is there a way to add a color balance in the reshade settings? it seems too yellowish to me.
thanks again
 
Thank you very much. Now the game is very enjoyable in VR (oculus rift S).
Is there a way to add a color balance in the reshade settings? it seems too yellowish to me.
thanks again
I don't think CAS/Reshade works with Oculus, but Eye Accommodation does though that one has more benefits than the sharpening anyhow. In the .cfg for it you can play around with parameters of saturation and paletteWeight which might be able to dial in the hue for you. I have a Valve Index, so my parameters there are likely different from what looks best on Oculus displays though the other of the params should still bee valid
 
I don't think CAS/Reshade works with Oculus, but Eye Accommodation does though that one has more benefits than the sharpening anyhow. In the .cfg for it you can play around with parameters of saturation and paletteWeight which might be able to dial in the hue for you. I have a Valve Index, so my parameters there are likely different from what looks best on Oculus displays though the other of the params should still bee valid
Thanks for the information, I will test it!

I can say that CAS/Reshade works by starting it from Steam VR (Open VR), downloading one of the latest versions in this link:
https://github.com/fholger/reshade/releases/tag/openvr_alpha2

FSR or NIS they also works
https://github.com/fholger/openvr_fsr/releases/tag/fsr_v2.1.1

:thumbsup:
 
The link to the alternate dll from Obo is broken. Anyone able to share it?

Strange, I just checked and it worked for me, the dll link is in his post I link to in the op. It's not an alternate dll but a suplementary one that changes the boot order so both mods work at the same time. If you can't get it to work though I can pm you a copy of it. It won't let me attach it here as a file
 
Strange, I just checked and it worked for me, the dll link is in his post I link to in the op. It's not an alternate dll but a suplementary one that changes the boot order so both mods work at the same time. If you can't get it to work though I can pm you a copy of it. It won't let me attach it here as a file

Oh, it's working today! Weird. I've got it downloaded, and will try it out when I have a bit more time.
 

What are you racing on?

  • Racing rig

    Votes: 528 35.2%
  • Motion rig

    Votes: 43 2.9%
  • Pull-out-rig

    Votes: 54 3.6%
  • Wheel stand

    Votes: 191 12.7%
  • My desktop

    Votes: 618 41.2%
  • Something else

    Votes: 66 4.4%
Back
Top