Jittery Values From Input Axis

Hi,

I’ve noticed that the Mouse X and Mouse Y values are pretty inconsistent when moving the mouse. This causes things like aim offsets to jitter. The engine has a Mouse Smoothing option that can be enabled in the settings which somewhat helps but not by much.

I’ve prepared a demo with a line trace that fires from the character as it rotates when the mouse is moved along the X-axis only.

This is with mouse smoothing disabled:

As you can see, the line traces are not spaced equally (marked red) as the character does not rotate smoothly.

Some of the values:

As you can see, they are all over the place.

LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.14
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.28
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.42
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.7
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.56
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.63
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.7
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.49
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.7
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.7

This is with mouse smoothing enabled:

Somewhat better but still jittery.

And some of the values:

LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.14
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.28
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.42
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.7
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.56
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.63
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.7
LogBlueprintUserMessages: [ThirdPersonCharacter_167] 0.49

I’m using a USB mouse by the way.

So the questions are:

  • Why are the input axis so jittery? Is this a bug?
  • How does the function that returns these values even work?
  • Is this due to the USB mouse? Will a PS/2 mouse resolve this?

And the main question is:

  • What can be done about this? Are there any workarounds to get a smooth curve besides FInterp?
    I haven’t noticed this issue in any other non-Unreal Engine games out there.

Thanks :blush:

1 Like