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:
I've worked around the mod incompatibility with a shim version of dinput8.dll. It pulls in the ReShade version of dxgi.dll when dirtrally2.exe loads, which ensures it gets control first. This seems to avoid whatever disruption is caused by the eye fix shim (d3d11.dll).

I've confirmed it does allow the ReShade sharpening to work, but I've never seen the eye accommodation difference in action to know whether it's defintely working. I can see the DLL has loaded so I believe it should be active. If anyone wants to give it a try just extract this DLL into the DR2.0 directory after installing both other mods.

If you want to build your own version of the DLL I can stick the code on GitHub later. I'm hoping the eye accommodation author will make whatever changes are needed to avoid it interfering with ReShade so my DLL isn't needed for long.

Nice work. I wonder if it matters what order the mods are installed in.. in my case the eye accommodation mod was available a few weeks before the sharpening so it was installed and running before adding sharpening.
 
ok so I did it ... now running Dirt2 bypassing steamvr.


My steps to get started
- Dirt2 previously installed via steam
- install openXR : https://mbucchia.github.io/OpenXR-Toolkit/
- install opencomposite: https://gitlab.com/znixian/OpenOVR
- Restart PC...
- run open composite, select 'run all via openxr'
- run open XR
- go to steamVR and launch dirt2.0 as usual
... Steam runs but OpenXR takes over... only way for me to make sure, is using the CTRL+F1 shortcut which popup the openxr menu... if not everything is the same.

I have not tried yet the 'eye accomadation' patch here

I am calling it a day by I can say that the game run much smoother now. It is not a 100% perfect thing but still good. and much smoother overall.

I can run the game at ultra setting and get 90fps IF I remove a few of the useless artifact such as the crowd or god rays and the like.

But I still cannot run 16x MSAA and 8x anti alising.

I am running RTX4090 FE and intel i7-10700k and reverb g2.

For some reason with steam I sometime had perfectly smooth run and other time it was horribly laggy. Right now it seems I can have stable smooth high definition

PS: silly me, at first I only saw an FPS overlay and all black screen... I thought it was buggy but looking behind me with the vr headset, the game ws just playing in my back ;)
Disable Anisotropic Filtering in the game gfx and enable it in Nvidia Control Panel instead, uses less resources. While you're in there bump your shader cache up to 100gb (it's a global setting, msaa is game specific though). Eye Accommodation mod is stuff the game should have shipped with and corrects some things that make certain stage/weather combos un-drivable
 
Last edited:
Hello, I been using DR2 for quite some time now. Just wanted to share an update of the current fixes that have worked for me in the hope that it may help guide someone out there. Most of this has been suggested in this same thread, I'm just summarizing. I'm using the Oculus Rift S with a 3080 laptop.

*Open composite. This alone brought me around 10% of performance overhead AND fixed the low quality dithering at low light. The only problem I have is that whenever the headset goes to sleep, DR2 will crash. I "fixed" that by covering the headset sensor with tape.

*Eye accommodation fix there is an Open composite compatible version. Obviously a must for usability and improved tree quality.

*FOV tangent multiplier 0.8/0.8 in the Oculus debug tool. This alone gave me around 20% performance overhead and can be used with all Oculus games without any visible penalty.

*Game settings optimization, there are many guides out there; however, you should try all settings by hand to measure actual improvements in different tracks conditions. MSAA4x did seem to be the sweet spot with SS at 1 (disabled) any more and performance suffers without notable quay improvements. Other picky setting is ground cover, in some sections can really tax my system, medium is a good starting place but I did ended customizing it.

*Nvidia shader cache setting in the Nvidia control panel. This actually seemed to help reducing stuttering!

*Starting Steam in light mode. This actually seemed to free my CPU a bit and improved stuttering In general.

Some things that have NOT worked or brought little/any improvements:

*CAS sharpening filter. Not compatible with Oculus.

*VRPREFKIT sharpening and FOV rendering tool, didn't work for me either with Open composite or the Oculus SDK at the same time as the Eye accommodation fix.

*OpenXR toolbox. Will run but didn't get any major performance improvement either with rescaling or FOVeated rendering, and did affect quality so I decided to disable it.

So that's it, took a lot of time from my life trying to get the most of this sim, and surely will in the future! But I really love rally simulation in VR, so it's worth it. All this feels like amateur rally racers tuning up their ride, so it's in the sport's spirit I guess... Jajaja
 
I can't access the site for the eye accommodation fix. Is there any way I can get it?
Yeah Kegetey's site's been down for a while, luckily the updated version of it (compatible with openxr) was recently posted to github and works the same with steamvr

 
link to the CAS sharpener doesn't work


Thanks, didn't realize racedepartment was changing part of the address to **** for some auto flagged dirty word reason or something. To get around it I added a space but now you have to manually remove the extra space and copy/paste it manually into your address bar.

Please let me know how you get on with this mod, so far it's blowing me away after >1000 blurry Vr hours in this game. Here's a comparison shot someone just did that used it in *Google Earth VR:

ON
sHLxTxf.png

OFF
V4QbkD6.png



* in GE you have top rename "dxgi.dll" to "opengl32.dll", and drop it along with all its files / folders into Program Files (x86)\Steam\steamapps\common\EarthVR
 
Technically a Skyrim mod but made to be compatible with most games and works great in Dirt Rally 2.0.
My dirtrally2.exe doesn't seem to be loading dxgi.dll, so it's not activating ReShade for me. Did you have to rename it from the bundled files? I'm using the latest DR2.0 version from Steam, with the archive contents extracted into the DR2.0 directory.

It does seem to be linked to d3d11.dll so I think the vr eye accommodation fix is getting loaded OK.
 
My dirtrally2.exe doesn't seem to be loading dxgi.dll, so it's not activating ReShade for me. Did you have to rename it from the bundled files? I'm using the latest DR2.0 version from Steam, with the archive contents extracted into the DR2.0 directory.

It does seem to be linked to d3d11.dll so I think the vr eye accommodation fix is getting loaded OK.

Wierd I didn't have to rename the .dll and DR2 picked it right up. Colors looked funny (pinkish and oversaturated/too bright) until I changed .cfg parameters to match what was in eye accommodation for those settings.

I extracted the contents to a separate folder and copied them to the game directory but that shouldn't make a difference from extracting it there directly besides not having to delete the zipped folder after. Also using Steam and the most current DR2 build, Win10/3600/2080
 
Thanks for confirming the details.

Strangely, if I launch in non-VR mode then it all works fine. Launching in VR mode (either picking that option on launch, or by launching directly from SteamVR) then it doesn't load it. Checking the running process with Process Hacker I can see it's loaded C:\Windows\System32\dxgi.dll instead when using VR.

There must be something different about the launch environment that stops it being found. If it works for you then it's likely to be something else I've got installed. I've disabled all SteamVR plugins (Revive and fpsVR) but it didn't help, so I'll keep looking. Win10[2004]/5600X/1080ti.
 
Here's the reshade GitHub page


I've tried it with different games. Works with dcs, but not with DR2, Pcars2 where it doesn't load. ACC crashes with an error if I attempt to use it
 
Last edited:
It seems to be the d3d11.dll for the eye accommodation fix that prevents ReShade dxgi.dll from being loaded, though I'm not quite sure why. If I rename d3d11.dll it does then load the local dxgi.dll. The original dxgi.dll was crashing for me, but the version linked by @DayGlow above does work in VR in game (though not in some of the menus before it starts).

I had a closer look at the case where d3d11.dll is present, to see why it's getting the wrong dxgi.dll. The openvr_api.dll in the DR2.0 directory loads Steam\GameOverlayRenderer64.dll, which then loads Steam\SteamApps\common\SteamVR\bin\vrclient_x64.dll. That is implicitly linked to dxgi.dll, which pulls in C:\Windows\System32\dxgi.dll instead. The current directory is still DR2.0, but there must be something in the DLL search order rules that prevents it being used, and only when the d3d11.dll is loaded.

I'll have another look tomorrow but might have to see if the eye fix author can shed any more light on the conflict.
 
Thanks for confirming the details.

Strangely, if I launch in non-VR mode then it all works fine. Launching in VR mode (either picking that option on launch, or by launching directly from SteamVR) then it doesn't load it. Checking the running process with Process Hacker I can see it's loaded C:\Windows\System32\dxgi.dll instead when using VR.

There must be something different about the launch environment that stops it being found. If it works for you then it's likely to be something else I've got installed. I've disabled all SteamVR plugins (Revive and fpsVR) but it didn't help, so I'll keep looking. Win10[2004]/5600X/1080ti.

I have reVive and fpsVR and no problem but I avoided 2004 Win10 after hearing hardware/software compatibility horror stories, just checked and it's 20H2
 
I've worked around the mod incompatibility with a shim version of dinput8.dll. It pulls in the ReShade version of dxgi.dll when dirtrally2.exe loads, which ensures it gets control first. This seems to avoid whatever disruption is caused by the eye fix shim (d3d11.dll).

I've confirmed it does allow the ReShade sharpening to work, but I've never seen the eye accommodation difference in action to know whether it's defintely working. I can see the DLL has loaded so I believe it should be active. If anyone wants to give it a try just extract this DLL into the DR2.0 directory after installing both other mods.

If you want to build your own version of the DLL I can stick the code on GitHub later. I'm hoping the eye accommodation author will make whatever changes are needed to avoid it interfering with ReShade so my DLL isn't needed for long.
 
The on-disk installation order doesn't matter, just the order they're loaded and activated when the game runs. DLLs imported by the EXE are loaded first, in the order they're bound when the module was built. As each DLL is loaded, any DLLs they're linked to get pulled in too.

dirtrally2.exe doesn't directly import dxgi.dll, so ReShade only gets loaded when something else uses that module, or when the game manually loads it later. When running DR2.0 in VR mode that seems to be after the eye accommodation mod DLL (d3d11.dll) is active, which prevents the ReShade version of dxgi.dll from being found for some reason (still not sure why).

My work-around uses the same mechanism to get ReShade loaded earlier. dirtrally2.exe imports dinput8.dll for controller support, so my DLL gets loaded as part of launching dirtrally2.exe. That DLL also imports dxgi.dll, which pulls in the correct local ReShade dxgi.dll version before the eye accommodation mod gets a chance to run. Swapping the order seems to be enough to get them to work together.
 
Just to see what would happen I placed your .dll in my directory and launched the game but it immediately crashes flagging dxgi.dll in the crash window. Did the same thing for repeated attempts. Deleted it and it launched and ran fine, with both mods functioning.

Wonder why there are differences in behavior, just works without fuss on my machine but you need a workaround to achieve, which is incompatible with my build. Either way, glad you found a way to make it work and hopefully kegety can shed some light on this.
 
Using the fix it works for me too, both at the same time. However I'm not a fan of the way the eye correction looks. It really blows the image out with like a white brightness, not sure how to explain it. Looks really faded to me. On the other hand, I drove in USA in rain, and under the trees at some parts of the stage I actually find it impossible to see as it's too dark. I have to go back to stock to check if this is a conflict of the colour profile or and eye correction, or just part of the game. It looks VERY strange. I have had DR 2.0 for ages now but not put barely an hour into it, simply too busy with competitive leagues and life stuff. Will say that it's super addictive once you get going. I must have had "one more try" 20 times.
 
Using the fix it works for me too, both at the same time. However I'm not a fan of the way the eye correction looks. It really blows the image out with like a white brightness, not sure how to explain it. Looks really faded to me. On the other hand, I drove in USA in rain, and under the trees at some parts of the stage I actually find it impossible to see as it's too dark. I have to go back to stock to check if this is a conflict of the colour profile or and eye correction, or just part of the game. It looks VERY strange. I have had DR 2.0 for ages now but not put barely an hour into it, simply too busy with competitive leagues and life stuff. Will say that it's super addictive once you get going. I must have had "one more try" 20 times.

Interesting, did you change the settings in the .cfg to the values I posted? If not headlights and dusk sections are way too dim, and I also found day stages in Aus for instance to be too bright and cartoony looking (as I do at default in-game brightness setting). As to whiting out are you sure your gfx drivers are up to date? The only time Ive had that in Sweden was out of date gpu drivers and it was pretty recent but exactly as you describe. With the mod installed and adjusted I no longer even think of reaching for the brightness button no matter what the lighting/weather or location.

crucial eye accommodation mod asjustments:
luminanceMinRange=600
brightness=1.00


Totally get the addictive element... DR2 is my main jam and I've racked up over 1000hrs after a lot of 'one more tries' lol though racing/prepping for races in JRC or the historic club I run (or crosskart exedptions on stages using ACAT mod!) account for most of them.
 
Here's the reshade GitHub page


I've tried it with different games. Works with dcs, but not with DR2, Pcars2 where it doesn't load. ACC crashes with an error if I attempt to use it

A guy on reddit got it to work using the dxgi.dll from the openVR version to replace the dxgi.dll from the Skyrim version
 

Latest News

Are you buying car setups?

  • Yes

  • No


Results are only viewable after voting.
Back
Top