Modding, Mission Design, and Coding > Test Builds

Antipodes 9 - SDL Everywhere

<< < (2/17) > >>

sse2 build seems to work ok in the input department with keyboard and mouse, however there seems to be a major graphical glitch in that the black behind the stars background does not appear (only nebula, planets ect...) Causes some pretty freaky problems

[attachment deleted by an evil time traveler]

I tested the SSE2 build using a joypad (Xbox 360 Gamepad - wired), the triggers are treated as two separate axes (Ry for Left Trigger, Rz for Right Trigger)  which are on 0% when released. When you hold them down, they go to 100%.

The main control stick (left) is mapped correctly as Joystick X and Joystick Y.
The secondary control stick (right) is mapped as Joystick Z Axis (for its horizontal axis) and Joystick RX Axis (for its vertical axis)

The buttons go as:

D-Pad up: Button 1
D-Pad down: Button 2
D-Pad left: Button 3
D-Pad right: Button 4

Start: Button 5
Back: Button 6

Left Stick Click: Button 7
Right Stick Click: Button 8

LB: Button 9
RB: Button 10

A: Button 11
B: Button 12
X: Button 13
Y: Button 14

It seems to recognize everything well, the only thing that is an annoyance in my opinion is the way it handles the triggers.

I assume the other 2 builds are going to handle the same way as far as XBox Pad input goes, but I can test it if you guys want.

EDIT: I forgot to mention, in non-SDL builds, the triggers are recognized as a single axis, and it seems to go from -100% (Left trigger fully pressed) to 0 (both fully pressed or both released) to +100% (Right trigger fully pressed). The horizontal axis of the right stick was simply not recognized at all and might as well not exist.


--- Quote from: chief1983 on December 01, 2013, 01:59:11 pm ---Yes I meant to mention the axis swap too, it seems they map differently in game than from DirectInput.  It seems to say Rx and Z are different between the two.
--- End quote ---

Might be related to the axes confusion I reported on Mantis, here.

I've had a bit more time to test the sse2 build (for some reason the graphical glitch fixed itself) and the mouse only moves as if the axis is tied to desktop position. if your cursor is all the way to the left then you can't turn anymore in that direction.


--- Quote from: Macfie on December 01, 2013, 11:48:04 am ---It would be nice to base the antipodes build off a more recent nightly so you don't get the error message when using the Media VP beta release.
One thing I noticed was the build reversed my throttle and bank on the joystick (Logitech Extreme 3D Pro).  The other thing I noticed was if you disconnected the joystick during the game and then re-plugged it in it would not redetect the joystick.  I sometimes reset the joystick by doing this if it isn't exactly centered.

--- End quote ---

the first issue comes from the fact that fs2 dates back to the days of yore when gameports were still the standard interface. and back then completely different axis designations were used (x,y,throttle/z,rudder/r). there were really named after whatever the driver decided to name them. usb sticks are usually based of an hid class from the usb specifications, and they used different axis names. d3d had its own names and so does sdl. none of them are anywhere near compatible. when it comes right down to it, its a binding issue, i dont see it being too much trouble to tweak your control profiles.

for the second issue, you just need to have the game re-scan the system for joysticks. this is probibly only being done once at start up, you just need to have this done either at a regular interval (every few seconds), or perhaps when you enter the control config screen. if you needed to unplug or replug a joystick while in game, you would just have to go into options and back out and the stick would be found and remapped. bind by guid instead of stick number to make sure you dont get your sticks mixed up.

--- Quote from: Kiloku on December 02, 2013, 06:42:32 am ---It seems to recognize everything well, the only thing that is an annoyance in my opinion is the way it handles the triggers.

--- End quote ---

thats just M$ being a dick. sdl is probibly bypassing the thing in the ms driver that combines those triggers into a single axis (this was done because ms thought that all axes should be center rested). i actually combine my ch toe breaks into a single rudder axis, because my actual rudder axis is so clogged with dirt it makes this annoying grating sound when used. this might be solved with a 3rd party utility (ppjoy, anything based on vJoy, etc) in a similar way. the other way to fix this is by letting you combine axes in the game, its not really hard to do but would be somewhat hard to mesh that into the existing interface. perhaps use half axis binds as an alternative to full axis binds (like bank left axis, bank right axis). assuming the axis are mapped out to a -1.0f to 1.0f range, axis merging should looks something like this:

--- Code: ---float bankAxis =  (bankLeftAxisValue*0.5f) - (bankRightAxisValue*0.5f);

--- End code ---

there arent really a whole lot of cases where you would need this though.


[0] Message Index

[#] Next page

[*] Previous page

Go to full version