Raw Mouse Input pre-acceleration?

I’m using JInput indirectly though jMonkey, and I’m seeing lag and other artifacts from what I believe is JInput sending me events after windows has applied acceleration and smoothing. Is there a way to obtain real, actual Raw physical input from the low level mouse drivers? I’ve done a little bit of experimentation such as using “-Djinput.useDefaultPlugin=false -Djinput.plugins=net.java.games.input.RawInputEnvironmentPlugin” but I believe I’m still getting numbers after the acceleration and smoothing. The evidence I have comes in the form of a small experiment where I print the absolute (cumulative) effect of all mouse movement events. With this program running, I do the following:

  1. Move the mouse quickly left.
  2. Move the mouse slowly right.
  3. Repeat.

After just a couple of iterations, the absolute X position becomes increasingly negative. If I then reverse the directions (fast right, slow left) the number starts to creep positive. To me this is good evidence that acceleration is being applied.

Again, I don’t have a small pure JInput program I can share, but such an experiment should be easy to construct. I am fully aware that I can disable mouse acceleration myself with Windows control panel (or registry changes). What I would really like to do is ensure that if I produce a game it always gets raw mouse input regardless of what the user’s environment looks like.

Any pointers would be greatly appreciated.
JJ

I had this same issue and unfortunately there isn’t a workaround available AFAIK (at least not since I last properly investigated ~4 years ago).

Cas :slight_smile: