WhiteMagic / JoystickGremlin

A tool for configuring and managing joystick devices.
http://whitemagic.github.io/JoystickGremlin/
GNU General Public License v3.0
313 stars 45 forks source link

BUG: Input Viewer Axes-Current Visualizer Stair Steps For Negative Values #467

Open TheGoodIdeaFairy opened 1 year ago

TheGoodIdeaFairy commented 1 year ago

The Input Viewer shows the change in value for axis above '0' smoothly, but jumps by whole number percentage values below '0'.

TheGoodIdeaFairy commented 1 year ago

Correction: jumps every ~2%

WhiteMagic commented 1 year ago

Is is for the current or temporal axis value visualization? On a T16000 this doesn't seem to happen for the current value visualization. Depending on the resolution of an axis I can see this to happen due to numerical oddities.

TheGoodIdeaFairy commented 1 year ago

Been awhile since I've checked in, sorry for that... as I recall this was happening with all axes for Left and Right VPC Alpha/WarBRD sticks, and I believe the VPC Ace pedals were also affected... this phenomenon was present in both current and temporal graphs. This behavior was not present in any other visualization tool (when used to check the output of the physical device), but the low resolution output values to vjoy device were confirmed by other tools as well (in other words, this did not appear to be a visual glitch in the graphs). It's worth reiterating: this was only for negative values. The positive side of the graph was as expected.

I'll try to find time to set my gear back up to confirm and post a screencap or clip at the end of the work week.

WhiteMagic commented 1 year ago

It is highly unlikely that Gremlin would forward low-resolution data to vJoy unless the input data were of the same low resolution. DirectInput has a 16 bit resolution on the axis, and Gremlin maps everything into that range. So for an initial high-resolution device, say 12 bit, to become something akin to 8 bit would not be anything that Gremlin ever does without some deliberate plugin or similar.