Commit graph

48 commits

Author SHA1 Message Date
Andreas Haas
8c06da0d49
Better handling of joypad device IDs.
Now InputDefault is responsible for giving out joypad device IDs to the platform, instead of each platform handling this itself.
This makes it possible for c++ modules to add their own "custom" gamepad devices, without the risk of messing up events in case the user also has regular gamepads attached (using the OS code).
For now, it's implemented for the main desktop platforms.
Possible targets for future work: android, uwp, javascript
2017-03-26 00:12:11 +01:00
Andreas Haas
ed3134088b Input: Update mouse position on mouse-button events.
(cherry picked from commit 468719c480)
2017-03-24 23:19:49 +01:00
Pedro J. Estébanez
2c2c48ffb3 Implement warped mouse panning for 2D & 3D editors
Enabled by default as in Blender, but can be disabled separately for 2D & 3D;
the core functionality is in Input so this could be reused or even exposed to scripts in the future
2017-03-22 21:18:47 +01:00
Rémi Verschelde
f8db8a3faa Bring that Whole New World to the Old Continent too
Applies the clang-format style to the 2.1 branch as done for master in
5dbf1809c6.
2017-03-19 00:36:26 +01:00
Rémi Verschelde
4bfecab813 Style: No break before list brace
clang-format does not handle that well *at all*.

For the reference, found the relevant pieces of code with:
`ag "=[ "$'\t'"]?"$'\n'"[ "$'\t'"]?{" --ignore=thirdparty`

(cherry picked from commit 40323407df)
2017-03-18 21:05:58 +01:00
BastiaanOlij
8436a34305 Core motion for Godot 2.x (based on PR 7127) 2017-03-09 21:46:38 +11:00
Rémi Verschelde
d8223ffa75 Welcome in 2017, dear changelog reader!
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!

(cherry picked from commit c7bc44d5ad)
2017-01-12 19:15:30 +01:00
Andreas Haas
64b083b496 Allow whitespace in Gamepad mappings.
Previously, mappings that contained whitespace (most likely after a comma seperator) would not parse
correctly.
Consider the following mapping as an example:

"_test_guid_, test controller, a:b0, b:b1, leftx:a0 ,"

(cherry picked from commit fa502b7ccc)
2016-10-17 20:50:43 +02:00
Andreas Haas
33223e7a8a Add function to get readable names for joystick events
Closes #6476

(cherry picked from commit e0fcd9331a)
2016-10-09 17:19:57 +02:00
Andreas Haas
e788ffff65 Fix input action pressed state not changing for quick joystick movements.
fixes #6488
Also removes a bunch of dead code related to checking if a joystick axis is pressed.

(cherry picked from commit 84783fe77b)
2016-10-09 17:16:19 +02:00
Andreas Haas
323dec7dd5 x11: fix x360 wireless gamepad mapping.
Uses hat values instead of buttons for the dpad now.
Fixes #6419

(cherry picked from commit 20bad652ef)
2016-09-18 23:13:06 +02:00
Andreas Haas
adcf45b627 Update gamepad mappings from community db.
(cherry picked from commit 808bd53934)
2016-09-18 23:03:22 +02:00
Andreas Haas
cd6afd5f1d Fix crash when trying to access the guid of an unavailable Gamepad.
Throws an error now.

(cherry picked from commit 02a8604906)
2016-09-01 08:45:51 +02:00
Andreas Haas
5f18c5cb46 Fix steam controller gamepad mapping
The left stick click was missing

(cherry picked from commit e52567bd29)
2016-08-08 18:14:51 +02:00
Andreas Haas
ccf6b3151d Add gamepad mapping for the steam controller userspace driver. 2016-07-26 11:54:59 +02:00
Jamil Halabi
370ae3512d Added gyroscope support to Godot and Android 2016-07-16 01:43:32 +08:00
punto-
bba89aef3b Merge pull request #5559 from Hinsbart/connected_joysticks
Input: add get_connected_joysticks() method.
2016-07-10 14:00:27 -03:00
Andreas Haas
45cfd199a4
Input: add get_connected_joysticks() method.
fixes #5465
2016-07-05 14:08:02 +02:00
Andreas Haas
91add16300 Can use AtlasTextures as custom mouse cursor.
fixes #3957
2016-07-03 19:36:12 +02:00
Wilhem Barbier
913e3206db Fix the joystick vibration timestamp 2016-06-20 09:57:23 +02:00
Rémi Verschelde
57e1387199 Merge pull request #5225 from Hinsbart/x_rumble
Windows: Support gamepad vibration using XInput.
2016-06-19 12:59:18 +02:00
Rémi Verschelde
a7fc04626a Add missing license headers in our source files (#5255)
Also removes a couple wrong Godot headers from third-party source files.
2016-06-18 14:46:12 +02:00
Andreas Haas
0e8b860048 Windows: Support gamepad vibration using XInput. 2016-06-15 14:40:57 +02:00
Wilhem Barbier
f665200df7 Add joystick vibration support on Linux (#5043) 2016-06-15 07:25:35 +02:00
Andreas Haas
3d0b390457 Update gamepad mappings.
Merge mappings from https://github.com/gabomdq/SDL_GameControllerDB
2016-06-14 02:32:30 +02:00
fluffrabbit
4877b714b3
Add magnetometer sensor support for Android 2016-05-27 14:36:55 -03:00
Hinsbart
d6cd5108e3 Fix ds3 gamepad mapping 2016-05-04 00:21:32 +02:00
hinsbart
0022af9647 use joystick name from mapping-db if available 2016-02-29 16:48:19 +01:00
Krzysztof Jankowski
6b6ce35e78 OUYA gamepad mappings fix
Fix gamepad mappings for OUYA revision 4
2016-02-25 17:24:57 +01:00
Dana Olson
7efb45e0db added more Android gamepad mappings 2016-02-24 00:40:27 -05:00
Dana Olson
862c56c004 added a couple more Linux mappings, tweaked Ouya Linux mapping 2016-02-23 11:37:32 -05:00
hondres
9134ec942e fix is_joy_mapped return value 2016-02-16 23:23:06 +01:00
hondres
04f7c32847 fix joystick axis handling for Input.is_action_pressed() 2016-02-15 22:26:20 +01:00
hondres
8e359963b6 x11: analog triggers for ps4 gamepad 2016-02-14 00:03:53 +01:00
punto-
b6b33e8886 Merge pull request #3428 from Hinsbart/android-gamepad
support gamepad remapping on android
2016-02-08 20:09:02 -03:00
Dana Olson
d1aacb8f33 added more gamepad mappings 2016-02-01 12:24:19 -05:00
Hondres
e7b6e3f20b use fallback mapping from list 2016-01-27 12:18:34 +01:00
hondres
4d17eca504 clear joystick state on disconnection 2016-01-26 04:40:04 +01:00
hondres
285bcac224 can use fallback mapping on all platforms 2016-01-24 18:01:37 +01:00
hondres
e7c920fdba support gamepad remapping on android 2016-01-24 05:29:09 +01:00
hondres
1ad6ca0a81 add mappings and increase max number of buttons 2016-01-22 22:56:05 +01:00
Hinsbart
77858b66d3 html5 gamepad support 2016-01-21 02:30:24 +01:00
hondres
c632c13c66 Add some joystick functions to input. Enables manipulation of mappings at runtime 2016-01-08 00:40:41 +01:00
hondres
117ae93cf1 Analog values for gamepad triggers, using axes 6 & 7 2016-01-02 03:34:32 +01:00
Ariel Manzur
5f1ae5eac2 fix debouncing in axis buttons 2015-12-20 11:33:29 -03:00
hondres
87dab29f4b Use tabs instead of spaces for new gamepad code 2015-12-18 19:15:32 +01:00
hondres
af633c7941 Better gamepad support 2015-12-18 06:12:53 +01:00
Juan Linietsky
82a3304458 Added ability to set custom mouse cursors. Not hardware accelerated yet. 2015-09-24 18:06:15 -03:00