|
fdc52a65
|
2018-09-29T04:00:38
|
|
render: patched to compile on C89 compilers, other untested code fixes.
|
|
daad53af
|
2018-09-28T19:48:14
|
|
opengles1: set some non-zero drawstate defaults.
|
|
c20a858d
|
2018-09-28T19:47:44
|
|
render: moved opengles2 over to new interface.
|
|
22475bf3
|
2018-09-26T20:10:32
|
|
cocoa: Force an OpenGL context update when the window becomes key.
Fixes missing rendering on macOS 10.14 ("Mojave").
Fixes Bugzilla #4272.
(transplanted from aee4797c84ef90464e270b1f6095a6dd7ce280c1)
|
|
0d588cc4
|
2018-09-25T21:35:09
|
|
render: Do state cache improvements for GLES1, too.
|
|
d04e5524
|
2018-09-25T19:20:31
|
|
render: OpenGL renderer now caches some state, to improve non-batching mode.
(other minor bug fixes in here, too)
|
|
06461bba
|
2018-09-25T17:04:47
|
|
render: Move non-batching flushes to different place.
This lets us batch up a few commands that are all related to the same API
call.
|
|
43f15e05
|
2018-09-25T16:17:10
|
|
render: opengles renderer actually works now. :)
|
|
b2db99cb
|
2018-09-25T10:41:25
|
|
render: First shot at converting opengles renderer to new interfaces.
|
|
c01da217
|
2018-09-24T12:30:47
|
|
render: get rid of the predeclared functions in the GL and Metal renderers.
(others to come as I continue to update render backends!)
|
|
051d1cfc
|
2018-09-24T02:08:34
|
|
render: Make opengl backend take advantage of new high-level features.
|
|
8ac5c00a
|
2018-09-24T02:07:35
|
|
render: Add command queue debug logging.
|
|
2241b33f
|
2018-09-23T23:22:56
|
|
render: Update Metal and GL backends to use new high-level features, etc.
Now nothing is uploaded as dynamic data with Metal's setVertexBytes, etc; it's
all in the one big vertex buffer, now.
|
|
cc56de44
|
2018-09-23T23:20:40
|
|
render: A bunch of high-level improvements.
- high-level filters out duplicate render commands from the queue so
backends don't have to.
- Setting draw color is now a render command, so backends can put color
information into the vertex buffer to upload with everything else instead
of setting it with slower dynamic data later.
- backends can request that they always batch, even for legacy programs,
since the lowlevel API can deal with it (Metal, and eventually Vulkan
and such...)
- high-level makes sure the queue has at least one setdrawcolor and
setviewport command before any draw calls, so the backends don't ever have
to manage cases where this hasn't been explicitly set yet.
- backends allocating vertex buffer space can specify alignment, and the
high-level will keep track of gaps in the buffer between the last used
positions and the aligned data that can be used for later allocations
(Metal and such need to specify some constant data on 256 byte boundaries,
but we don't want to waste all that space we had to skip to meet alignment
requirements).
|
|
8955fb9b
|
2018-09-20T16:40:04
|
|
render: First shot at moving metal backend over to new batching system.
|
|
55cb9966
|
2018-09-20T16:36:54
|
|
render: first shot at reworking opengl backend for new batching system.
|
|
5fb67f9f
|
2018-09-20T15:46:02
|
|
render: Move to a batching system for rendering (work in progress).
|
|
a2f7af9a
|
2018-09-09T15:09:38
|
|
gles2: Make render command queue dynamic.
It now uses a growable linked list that keeps a pool of allocated items for
reuse, and reallocs the vertex array as necessary. Testsprite2 can scale to
20,000 (or more!) draws now without drama.
|
|
0d327529
|
2018-09-08T18:26:11
|
|
gles2: Major renderer optimization. Work in progress!
This moves all the rendering to a command list that is flushed to the GL as
necessary, making most common activities upload a single vertex buffer per
frame and dramatically reducing state changes. In pathological cases,
like Emscripten running on iOS's Safari, performance can go from a dozen
draw calls killing your performance to 1000 draw calls running smoothly.
This is work in progress, and not ready to ship. Among other things, it has
a hardcoded array that isn't checked for overflow. But the basic idea is
sound!
|
|
264b81b4
|
2018-09-06T00:56:13
|
|
metal: Make sure layer drawableSize is adjusted on resize.
Fixes Bugzilla #4250.
|
|
80021c21
|
2018-09-05T15:28:06
|
|
Speculatively disable rumble on the Razer Panthera Evo, which doesn't have rumble motors and probably hangs in the same way the Panthera does.
|
|
96259f1f
|
2018-09-05T12:16:01
|
|
Don't overwrite the default binding when changing the binding for a controller that was using the default.
|
|
963e74d6
|
2018-09-05T11:24:23
|
|
Added binding for Mad Catz FightStick TE S+ (PS3) on Mac OS X
|
|
c152e380
|
2018-09-05T11:18:50
|
|
Added support for the Razer Panthera Fightstick
Fixed bindings for the Mad Catz FightStick TE S+
|
|
3634e563
|
2018-09-01T20:47:12
|
|
metal: SDL_UpdateYUVTexture shouldn't swap planes based on format.
|
|
34237b80
|
2018-08-31T18:10:21
|
|
Better fix to make sure we're only returning controllers from the HIDAPI joystick API
|
|
4ffcd88c
|
2018-08-31T17:47:34
|
|
Removed VID/PID 0x1532/0x0037, which was listed in the Linux kernel as a Razer Sabertooth, because at least one variant of the Razer DeathAdder mouse shows up with this VID/PID.
|
|
5ef8eb49
|
2018-08-29T20:55:02
|
|
Don't show the Razer Raiju sound interface as a game controller
|
|
90a5607d
|
2018-08-29T20:23:42
|
|
Fixed compiler warning and use higher precision in angle calculation
|
|
207428b4
|
2018-08-29T20:23:39
|
|
Don't rumble Bluetooth PS4 controllers by default, as that switches the controller into extended input report mode, which breaks games that use DirectInput.
|
|
16ccff3c
|
2018-08-29T20:23:36
|
|
Fixed whitespace
|
|
fda14741
|
2018-08-29T18:56:54
|
|
Fixed Xbox One S Bluetooth support on Mac OS X
|
|
b6aaefc7
|
2018-08-29T11:04:02
|
|
SDL_evdev.c: undefine _THIS before redefining it.
src/core/linux/SDL_evdev.c:104:1: warning: "_THIS" redefined
In file included from src/core/linux/../../events/SDL_events_c.h:26,
from src/core/linux/SDL_evdev.c:45:
src/core/linux/../../events/../video/SDL_sysvideo.h:146:1: warning: this is the location of the previous definition
|
|
92396f7d
|
2018-08-28T16:19:31
|
|
Fixed Windows build
|
|
404ba5ee
|
2018-08-28T13:37:11
|
|
Fixed bug 4229 - Add support for ABGR format in DirectFB renderer
Alexandre
DirectFB supports 32-bit ABGR pixel format via DSPF_ABGR, but SDL doesn't map SDL_PIXELFORMAT_ABGR8888 to DSPF_ABGR.
A patch is attached and should add support for ABGR pixel format devices.
|
|
87bc1fb5
|
2018-08-28T12:57:51
|
|
GLES2: Get sin/cos out of vertex shader
The only place angle is activated and causes effect is RenderCopyEx. All other
methods which use vertex shader, leave angle disabled and cause useless sin/cos
calculation in shader.
To get around shader's interface is changed to a vector that contains results
of sin and cos. To behave properly when disabled, cos value is set with offset
-1.0 making 0.0 default when deactivated.
As nice side effect it simplifies GLES2_UpdateVertexBuffer: All attributes are
vectors now.
Additional background:
* On RaspberryPi it gives a performace win for operations. Tested with
[1] numbers go down for 5-10% (not easy to estimate due to huge variation).
* SDL_RenderCopyEx was tested with [2]
* It works around left rotated display caused by low accuracy sin implemetation
in RaspberryPi/VC4 [3]
[1] https://github.com/schnitzeltony/sdl2box
[2] https://github.com/schnitzeltony/sdl2rendercopyex
[3] https://github.com/anholt/mesa/issues/110
Signed-off-by: Andreas M?ller <schnitzeltony@gmail.com>
|
|
a1ca8441
|
2018-08-26T20:37:23
|
|
Update the cursor clipping each frame, in case it was stolen by another application.
|
|
15b3794f
|
2018-08-26T10:34:23
|
|
Only reset the clip rect if it's currently the rect we previously clipped.
This prevents us from clearing the clip rect globally when another application has set it.
There's also an experimental change to regularly update the clip rect for a window defensively, in case someone else has reset it. It works well, but I don't know if it's cheap enough to call as frequently as it would be called now, and might have other undesirable side effects.
Also fixed whitespace and SDL coding style
|
|
09ab752a
|
2018-08-24T10:41:57
|
|
Implement SDL_HapticStopEffect on Android (thanks Rachel!)
|
|
a794126d
|
2018-08-24T09:49:48
|
|
vulkan: SDL_Vulkan_GetInstanceExtensions should accept a NULL window.
Fixes Bugzilla #4235.
|
|
a003fa0a
|
2018-08-23T14:05:25
|
|
Implemented SDL_GetDisplayOrientation() on Android (thanks Rachel!)
|
|
50d50025
|
2018-08-23T02:21:17
|
|
Fixed build
|
|
088070e5
|
2018-08-22T23:47:29
|
|
Moved display orientation handling on iOS out to a separate function for Qt apps
|
|
f225af0c
|
2018-08-22T21:48:28
|
|
Added SDL_GetDisplayOrientation() to get the display orientation, and added a new event SDL_DISPLAYEVENT to notify the application when the orientation changes.
Documented the values returned by the accelerometer and gyroscope sensors
|
|
f1bc1c12
|
2018-08-22T17:44:28
|
|
Fixed crash trying to open HIDAPI controller as a haptics device on Windows
|
|
6f758ad2
|
2018-08-21T20:03:54
|
|
Moved SDL_IsTablet() to a cross-platform API function
|
|
e9f6805f
|
2018-08-21T19:42:19
|
|
Removed dependency on C++ runtime on iOS
|
|
c6647bf9
|
2018-08-21T17:24:12
|
|
Added the iOS sensor implementation
|
|
3e5dbc69
|
2018-08-21T13:29:21
|
|
Added a dummy sensor driver
|
|
7c3040e0
|
2018-08-21T12:11:34
|
|
First pass on the new SDL sensor API
|
|
109544ca
|
2018-08-21T11:23:47
|
|
Add SDL_IsTablet() to Android and iOS SDL.
|
|
0d22559e
|
2018-08-21T10:25:30
|
|
Fixed Android build error
|
|
5dfa4043
|
2018-08-20T21:19:17
|
|
Fixed warnings building on Mac OS X 64-bit
|
|
6b3f11e2
|
2018-08-20T21:18:56
|
|
Fixed code style
|
|
aeea6b9b
|
2018-08-18T12:30:04
|
|
Emscripten: Fixed SDL_SYSTEM_CURSOR_SIZEALL
|
|
90454b1e
|
2018-08-16T11:01:02
|
|
SDL_hidapi_ps4.c: define NTDDI_VISTA / _WIN32_WINNT_VISTA if not defined
it still needs a Vista or newer Platform SDK to build, though.
|
|
7d3a7ef8
|
2018-08-15T23:35:54
|
|
Use a single hint for both Xbox 360 and Xbox One controllers, since they are often the same driver.
|
|
a2add1f6
|
2018-08-15T23:14:45
|
|
Use the HIDAPI driver for Xbox controllers on Windows, and determine the XInput mapping at runtime for extended functionality like rumble and guide button.
|
|
3f5ff751
|
2018-08-15T23:14:43
|
|
Use a unified name list for Xbox 360 and Xbox One controllers for drivers that can handle both
|
|
aad340eb
|
2018-08-15T19:53:36
|
|
Added Windows Xbox controller state packet handling, for completeness.
|
|
63107524
|
2018-08-15T19:53:34
|
|
Fixed input from the Steam Virtual Gamepad on Mac OS X
|
|
0903e835
|
2018-08-15T19:53:31
|
|
Use SDL specific window class to avoid conflicting with Steam
|
|
c8866658
|
2018-08-15T19:53:30
|
|
Catch device removal as well as device arrival on Windows
|
|
641c674f
|
2018-08-15T19:53:28
|
|
Turned off debug messages
|
|
51902010
|
2018-08-15T19:53:26
|
|
Remove the HIDAPI device if we get a read error from it
This fixes detecting PS4 controller disconnect on Mac OS X, where there isn't any device removed notification
|
|
dfbd7f65
|
2018-08-15T19:53:24
|
|
Fixed Mac OS X build
|
|
ec74c318
|
2018-08-15T19:53:22
|
|
Polling hid_enumerate() every 3 seconds causes freezes and stutters on some USB audio devices and mice.
We'll only enumerate devices when we get notification that the system devices have changed
|
|
2dc04b4c
|
2018-08-10T15:22:02
|
|
libm: one more static analysis fix.
|
|
67a48ad1
|
2018-08-10T15:04:08
|
|
haiku: Patched to compile with new joystick interfaces.
|
|
e1ac643b
|
2018-08-10T14:54:26
|
|
bsd: Patched to compile.
(I think.)
|
|
67764070
|
2018-08-10T14:42:40
|
|
bsd: Update joystick code for new interfaces.
(this is an untested push to see if buildbot likes it.)
|
|
b692c352
|
2018-08-10T14:32:30
|
|
emscripten: Patched to compile with new joystick interfaces.
|
|
941f8ecf
|
2018-08-10T14:10:47
|
|
joystick: define inline to SDL_INLINE
|
|
0b2863d4
|
2018-08-10T14:09:44
|
|
joystick: #if 0'd out some things that aren't currently used.
Fixes some compiler warnings.
|
|
a7c3d2af
|
2018-08-10T11:50:55
|
|
SDL_hidapi_ps4.c: lowercase windows header names.
|
|
4f41f07d
|
2018-08-09T16:05:48
|
|
Added missing files from previous commits
|
|
31b02243
|
2018-08-09T16:04:45
|
|
Added notes that this code was contributed by Valve
|
|
99759bac
|
2018-08-09T16:04:34
|
|
There's no controller that's supported by both XInput and HIDAPI
|
|
ab07ce11
|
2018-08-09T16:04:30
|
|
Don't update the device list for devices we know aren't supported
This should reduce HID enumeration (hitting the USB bus) if for some reason we're getting spammed with false device insert/removal events
|
|
28e0c0ee
|
2018-08-09T16:04:21
|
|
Sam Lantinga <slouken@libsdl.org> 2018-08-06 13:00 -0700
Backed out changeset 794a209b2270
http://hg.libsdl.org/SDL/rev/2e2ecdac957c
|
|
25a952e7
|
2018-08-09T16:04:18
|
|
Sam Lantinga <slouken@libsdl.org> 2018-08-06 11:58 -0700
Removed mapping for VID/PID 0x0079/0x0006, which is a generic PCB used in many different devices
http://hg.libsdl.org/SDL/rev/794a209b2270
|
|
888bf1af
|
2018-08-09T16:03:50
|
|
Worked around bug with Sony PS Now PS3 controller where DirectInput polling will continue to return success after the controller is unplugged.
The code is now reliant on SDL_PrivateJoystickAdded() and SDL_PrivateJoystickRemoved() being called correctly when devices are added or removed on Windows
|
|
f35e97ba
|
2018-08-09T16:03:29
|
|
Fixed Windows build
|
|
d2042e1e
|
2018-08-09T16:00:17
|
|
Added HIDAPI joystick drivers for more consistent support for Xbox, PS4 and Nintendo Switch Pro controller support across platforms.
Added SDL_GameControllerRumble() and SDL_JoystickRumble() for simple force feedback outside of the SDL haptics API
|
|
ba90412c
|
2018-08-08T15:39:20
|
|
libm: Don't let Visual Studio generate an implicit memset() call.
|
|
4cb84b8f
|
2018-08-08T12:36:54
|
|
backout INFINITY change...of course Visual Studio doesn't have it.
|
|
257071fc
|
2018-08-08T12:19:01
|
|
e_exp: One more compiler warning.
|
|
550437ed
|
2018-08-08T12:13:56
|
|
libm: Fixed all static analysis warnings.
|
|
c0aa626b
|
2018-08-08T10:26:22
|
|
e_exp: Fixed compiler warning on Visual Studio.
|
|
941c5b47
|
2018-08-07T18:07:11
|
|
haiku: Rename internal functions from BE_* to HAIKU_*
Fixes Bugzilla #2349.
|
|
f59b0056
|
2018-08-07T16:56:46
|
|
evdev: On sudden termination, make sure keyboard isn't lost (thanks, Tadek!)
"In release 2.0.6, when Linux evdev keyboard support has been moved to a
separate source file, a feature was added to disable normal keyboard event
processing to prevent "spilling" keystrokes to background virtual console.
This feature has one unpleasant side effect: if application fails to call
`SDL_Exit` before termination or crashes with fatal signal, console is left
in unusable state with keyboard not working and no possibility to switch
virtual console. If user has a chance, he can login remotely and restore
keyboard with `kbd_mode`, otherwise the only option is to reboot the machine.
This patch fixes that problem by intercepting fatal signals (with `sigaction`)
and process termination (with `atexit`), to restore keyboard state, if it
wasn't properly restored with `SDL_Exit`.
The function registered with `atexit` also restores original signal handlers,
to prevent leaving invalid handlers after SDL library is unloaded, if it was
loaded dynamically with `dlopen`.
No signal handlers or `atexit` function are installed if SDL boolean hint
`SDL_HINT_NO_SIGNAL_HANDLERS` is `SDL_TRUE`.
Additionally, if environment variable `SDL_INPUT_LINUX_KEEP_KBD` exists,
keyboard initialization function completely skips disabling keyboard. This
can be useful for debugging."
Fixes Bugzilla #4193.
|
|
623a6def
|
2018-08-07T16:49:18
|
|
alsa: optionally run entire pipeline non-blocking.
|
|
56f44cfa
|
2018-08-07T13:04:15
|
|
audio: Deal with device shutdown more carefully.
This would cause problems in various ways, but specifically triggers an
assert when you close a WASAPI capture device in an app running over RDP.
Related to (but not the actual bug) in Bugzilla #3924.
|
|
e714f659
|
2018-08-07T12:06:31
|
|
haptic: Fix initial detection of haptic devices on Linux system
SDL_UDEV_Scan must be called during SDL_SYS_HapticInit to ensure devices
outside of the 0-31 range are added to the list of haptic devices.
Fixes Bugzilla #3923.
|
|
a37d3e0b
|
2018-08-06T13:00:11
|
|
Backed out changeset 794a209b2270
It turns out the mapping is correct, just the name was confusing
|
|
cc682f20
|
2018-08-06T11:58:08
|
|
Removed mapping for VID/PID 0x0079/0x0006, which is a generic PCB used in many different devices
Different device with same vid/pic that is kind of a Saitek shape:
https://www.trust.com/en/product/17416-gxt-24-runa-compact-gamepad
n64 with same ID
https://bbs.archlinux.org/viewtopic.php?id=163488
PS shaped with numbers for buttons
https://pineight.com/mw/index.php?title=USB_game_controller#DragonRise_Inc._Generic_USB_Joystick
fightstick with same vid/pid
https://retropie.org.uk/forum/topic/7594/bartop-2-player-zero-delay-encoders-not-working
|
|
f45f33bd
|
2018-08-05T10:01:01
|
|
SDL_expf: return SDL_exp() instead of SDL_uclibc_exp() for consistency.
|
|
b4fe7412
|
2018-08-04T11:52:46
|
|
SDL_exp
|
|
e061a92d
|
2018-08-02T16:03:47
|
|
Some drag'and'drop improvements.
First: disable d'n'd events by default; most apps don't need these at all, and
if an app doesn't explicitly handle these, each drop on the window will cause
a memory leak if the events are enabled. This follows the guidelines we have
for SDL_TEXTINPUT events already.
Second: when events are enabled or disabled, signal the video layer, as it
might be able to inform the OS, causing UI changes or optimizations (for
example, dropping a file icon on a Cocoa app that isn't accepting drops will
cause macOS to show a rejection animation instead of the drop operation just
vanishing into the ether, X11 might show a different cursor when dragging
onto an accepting window, etc).
Third: fill in the drop event details in the test library and enable the
events in testwm.c for making sure this all works as expected.
|
|
8f0cc4a4
|
2018-07-22T19:42:08
|
|
Backed out changeset 2e42ec46061e.
This change isn't correct. See comments in Bugzilla #4183.
|