geeky / dinput8wrapper

This is a DirectInput 8 (dinput8.dll) Wrapper, which internally uses Raw-Input instead of DirectInput
MIT License
42 stars 6 forks source link

Max Payne 3 - Could this work as a drop-in replacement for DInput 8? #7

Open cammy8580 opened 5 months ago

cammy8580 commented 5 months ago

Max Payne 3 is known for it's notorious problem of having extremely inconsistent mouse sensitivity. It comes with a slew of problems, including a slower Y sensitivity than X, constantly changing sensitivity depending on what action occurs in game, and as some report, some form of frame-dependent sensitivity.

The game uses DirectInput 8 for processing it's mouse input, as reported by Special K. When disabling DirectInput 8 through it, The mouse input acts extremely consistent on both axis, and most instances of speed changes do not happen. Although, because of this, the mouse is no longer called into it's own DInput8 thread.

Since this wrapper uses Raw Input instead of mouse processing through DirectInput, while still staying on it's thread, couldn't this potentially work?