Sign of GamepadLeftY and GamepadRightY is different

I configured two axes with scale 1.0. One is using GamepadLeftY as input. the other GamepadRightY.

It seems they are reported with different signs if the analog sticks are pushed towards the same direction.

You can use the console command “showdebug input” to verify this.

Marc

Hey mkamradt -

I am not able to reproduce this on my machine, could you upload a screenshot of your debug chart while the error is occurring ?

Thank You

Eric Ketchum

Hi Eric,

Here is the screenshot while pressing down both analog sticks on a XBox 360 pad.

Hey mkamradt -

After some research, this is expected behavior as setup in the defaultinput.ini. If you want to change this behavior you are welcome to go into the .ini file and reverse the right stick info there.

Thanks

Eric Ketchum

Hi Eric,

there are only “defaultinput.ini” files set up for the project templates. However I started with a blank project and set up my axis manually.

I could neither find any relevant mappings within the “engine\config\baseinput.ini” nor within the various “input.ini” files.

Maybe the guys who set up the templates / demo projects just wondered themselves about the sign of the axis and simply reversed them for their project? :slight_smile:

Marc

Hey mkamradt -

The DefaultInput.ini is created in the [Project Folder]\Config\DefaultInput.ini as soon as you set up mappings in your Project Settings. At which point you can go into the newly created *.ini file and change the values as wanted.

I tested this in both just a blank project and in a newly created C++ solution.

Let me know if you still cannot find the file -

Eric Ketchum

To clarify this issue: After debugging the controller events I understand that FSceneViewport::OnControllerAnalogValueChanged() has a hard-coded special case for EKeys::Gamepad_RightY and forces a sign-change.

It has nothing to do with the defaultinput.ini per se, however the sign can be reverted using settings within defaultinput.ini.

I still do not understand the rationale behind this but at least I know where this originates from.