Jump to content
DIRT 5 - Chat about the game and get support here. Read more... Ă—

DR 2.0 Graphic Hitching w/ Wheel Plugged In

Recommended Posts

obo's fix works great and will not cause any issue with other games. It ONLY runs for the Dirt games and only when the game is active (dinput dll added to games folder).

There seems to be a long running issue with CM games and usb polling glitches (years?) but DR2 was the first for me to show this and I nearly refunded it. CM owe obo a beer 🙂 

Share this post


Link to post
Share on other sites
12 hours ago, obo said:

I uploaded DirtFix v1.1 a couple of hours ago, and that's now been tested with DR, DR 2.0 and D4.  Could you please try the update?

v1.0 didn't work with DR 2.0 as it's a 64-bit app, and the first version only worked with 32-bit apps.  I finally bought DR 2.0 to test it myself so I've seen it's active.  It fixes my input-related glitches, and I hope the update works for others too.

@PJTierney This seems hopeful, judging by whats been said. It might be good if someone from the dev team can work with this user to implement this fix officially, assuming its viable?

Share this post


Link to post
Share on other sites

interesting, why games do periodic pooling at all? for example DR1 was not able to recognize a controller  device connected after the game start.

moreover, if you run DR1 with ie steering wheel turned off, the game looses all controller settings. so after restart with controller  enabled this tame you need to setup all mappings again. Just to repeat it's how it behaves in DR1. I don't how DR2 solves it.

Speaking about the tool, in VRfps I noticed some spikes, fortunately without  serious impact. But I will check the tool too. seems interesting. Can the game recognize changes in controllers  when this tool is running, lets say when you go into controller settings section?

Share this post


Link to post
Share on other sites

@oboThanks for your fix, it works very well with DR2!

I had irregular stuttering at average 60 FPS on every track.

Even with the lowest setting and increasing FPS the stuttering was still there.

With you fix DR2 runs very smooth.

Intel I7 3.40 ghz

32GB Ram

NVIDIA GForce GTX 770

WIN7 PRO

 

Edited by GTV1234

Share this post


Link to post
Share on other sites

It works for me too. No more performance spikes. Now frame rendering takes consistently 8ms. Thanx a lot.

Edited by MaXyMsrpl

Share this post


Link to post
Share on other sites

Glad to hear it's working for at least some people 🙂  Hopefully it's enough to get the polling changed in the original games -- ideally only reacting to PnP notifications instead of polling all the time.

I saw some reports on Reddit of the utility causing the game to crash on startup.  If that happens just uncheck the game to disable the fix for that game.  I'd also be interested in any details you can provide of the crash, and I'll see what I can do to fix it.

Share this post


Link to post
Share on other sites
18 hours ago, obo said:

Glad to hear it's working for at least some people 🙂  Hopefully it's enough to get the polling changed in the original games -- ideally only reacting to PnP notifications instead of polling all the time.

I saw some reports on Reddit of the utility causing the game to crash on startup.  If that happens just uncheck the game to disable the fix for that game.  I'd also be interested in any details you can provide of the crash, and I'll see what I can do to fix it.

@PJTierney Someone from the dev team REALLY needs to get in touch with this user and work with them, since they appear to have figured out this USB polling issue. Working with them means this fix can be tested properly, checked for bugs far easier, and then passed out to the whole playerbase.

  • Agree 1

Share this post


Link to post
Share on other sites

@PJTierney I've written up some notes detailing why the input polling is causing the games to glitch.

TLDR: a dinput8 critical section is stalling the main thread during message processing.

  • Thanks 1

Share this post


Link to post
Share on other sites
17 minutes ago, obo said:

@PJTierney I've written up some notes detailing why the input polling is causing the games to glitch.

TLDR: a dinput8 critical section is stalling the main thread during message processing.

I remember seeing this, team's aware as we were talking about input stutter today.

  • Thanks 1
  • Agree 2

Share this post


Link to post
Share on other sites

Hi,

I Don't know why, but today impossible to play without this issue.

As said a few months ago, when I had the issue, the way to play was restarting the computer, plug the Wheel and pedals, launch Steam and then the game, without doing anything else.

After one or two attempts, it was OK to play without issue.

Today, I've restarted my computer more than 15 times, nothing to do, the game freezes 1 sec each 3 or 4 seconds.

This issue makes me crazy, that's incredible that Codemasters do Nothing when many customers have this major issue.

Codemasters guys, wake up please, it's not possible to play the game with this issue.

 

Edit : I tried Obo Fix 1.2, and now the game is working fine. I hesitated because I am always very suspicious of programs not officially signed by big companies.

A very very big đź‘Ť to him.

Edited by Spouny
Information to be added

Share this post


Link to post
Share on other sites

Big shout out to @obo! I have both the steam and oculus versions (yes... I'm not too bright and a glutton for punishment)... but alas I enjoy the heck out of 2.0 in VR but this regular usb related stuttering was ruining that experience for me (and unplugging all my input devices is obviously not an option)... applied the @obo patch to both versions and both are now running at/ear the max 80 fps (oculus rift s) constantly for me (i9 9900k, 2080ti) with everything at high or ultra settings. Very sad that a sharp non employee was able to address the situation that codemasters couldn't figure out (or hasn't bothered to yet). Now if codemasters (or some brilliant minds such as @obo) can patch the rest of the major (for me) issues I'll be a happy camper:

  • no sound from oculus store version... have to configure and run through steam as others have discovered. Seriously codemasters... that information right there should lead you to a quick fix!
  • aspect ratio for 2d display of replays in VR in the steam version is incorrect (at least for oculus rift s... it is "too tall"). It is correct in the oculus version.
  • interestingly the steam version renders better for me than the oculus version (with the same graphics settings)... as others have noted in the oculus store version some of the rendering feels like it was limited to just 4 colors (instead of smoother gradients observed with the steam version).

Share this post


Link to post
Share on other sites
On 9/28/2019 at 1:38 AM, chunk1 said:

aspect ratio for 2d display of replays in VR in the steam version is incorrect (at least for oculus rift s... it is "too tall"). It is correct in the oculus version.

Do you run in full screen or windowed mode?
I remember that in fullscreen mode, HUD icons are distorted (too narrow) in v1.8. In windowed mode width to height ratio is proper. Maybe it's the same for the replay.

Share this post


Link to post
Share on other sites

@PJTierney Any news about this? It's been two months since I bought DR2.0 and I can't wait to download it once more and have it playable. Thanks!

  • Agree 1

Share this post


Link to post
Share on other sites

I think obo deserves more credit for the highly technical write-up at his github page where the utility is located. What do you do as a living obo?

Quote

DirtFix uses a shim version of a DirectInput module (dinput8.dll), which is copied into the game directory. This allows allows it to sit between the game and DirectInput API, and change its behaviour.

DirtFix passes through the first 2 calls to IDirectInput8::EnumDevices on each thread, before failing the call. The failure code causes the game to skip any post-processing of the results, so no further controller changes are seen. This both saves CPU time and avoids the main thead lock contention, to prevents the glitches.

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×