Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.

SDL 2.0.9 has been released today featuring some rather interesting new stuff. It's been a while, with 2.0.8 being released back in March of last year.

What is SDL 2? Well, in their own words "Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D." (and Vulkan since 2.0.6). It's used by many game developers including Valve, Unity, Feral Interactive and no doubt a great many more.

A few random highlights of what's new:

  • SDL_GetDisplayOrientation() to get the current display orientation along with SDL_DISPLAYEVENT for changes to it.
  • Added HIDAPI joystick drivers for more consistent support for Xbox, PS4 and Nintendo Switch Pro controller support across platforms. Valve contributed PS4 and Nintendo Switch Pro controller support.
  • Support for many other popular game controllers
  • Multiple extras to deal with gamepads like SDL_GameControllerMappingForDeviceIndex() to get the mapping for a controller before it's opened
  • Specifically for Linux, there's now a "SDL_LinuxSetThreadPriority()" feature to allow adjusting the thread priority of native threads.

The SDL render batching and some caching, which Ryan Gordon wrote about in this Patreon post didn't make it into this release but it should be in the next one. Ryan told me he didn't want to risk breakage late in the development cycle. That should make the next version of SDL after this really quite exciting.

On top of that, Wayland server-side window decorations on KDE should also be in the following release. You can see a video of that from Ryan Gordon below:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

You can see a human readable changelog here for 2.0.9 and for the commit log to get down and dirty with more details find that here.

Article taken from GamingOnLinux.com.
Tags: Game Dev
13 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. You can also follow my personal adventures on Bluesky.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
12 comments

kaiman Oct 31, 2018
"SDL render batching, which Ryan Gordon wrote about in this Patreon post" is not in 2.0.9. As Ryan writes in the very same post:

"This was a lot of work, and I'm thrilled with the end result. This project is sitting in the "SDL-ryan-batching-renderer" branch in revision control; we're about to ship SDL 2.0.9 and it's way too late to drop a change this huge into it, but it will merge thereafter."

Other than that, yay! SDL is likely my second most favourite open source project.
Liam Dawe Oct 31, 2018
"SDL render batching, which Ryan Gordon wrote about in this Patreon post" is not in 2.0.9. As Ryan writes in the very same post:

"This was a lot of work, and I'm thrilled with the end result. This project is sitting in the "SDL-ryan-batching-renderer" branch in revision control; we're about to ship SDL 2.0.9 and it's way too late to drop a change this huge into it, but it will merge thereafter."

Other than that, yay! SDL is likely my second most favourite open source project.
Looking over the revisions linked in the article, sure looks like it made it in. Keep in mind he wrote that post almost a month ago and it only released today.

Edit: No it's not, updated :)


Last edited by Liam Dawe on 31 October 2018 at 8:58 pm UTC
kaiman Oct 31, 2018
Edit: No it's not, updated :)
My own project uses SDL too, so I'll keep an eye on their repository to see what's upcoming, and I hadn't seen the batching stuff being merged so far. Given how many games depend on SDL these days, there's little room for errors, so I would have been very much surprised if Sam or Ryan pulled a stunt like that :-).

But I'll gladly try it out as soon as it lands. I'm pretty sure it'll be quite beneficial in my case.
Liam Dawe Oct 31, 2018
Yeah, the commit log was a little confusing since there's a bunch of stuff tagged as "SDL-ryan-batching-renderer". Although they're not actually in the 2.0.9 release just yet.


Last edited by Liam Dawe on 31 October 2018 at 10:03 pm UTC
Purple Library Guy Oct 31, 2018
I have a question: The descriptions says "via OpenGL and Direct3D". So, does/can/should Vulkan relate to this in any way?
Liam Dawe Oct 31, 2018
I have a question: The descriptions says "via OpenGL and Direct3D". So, does/can/should Vulkan relate to this in any way?
Vulkan support was added in 2.0.6, their description is probably just outdated.
Purple Library Guy Oct 31, 2018
I have a question: The descriptions says "via OpenGL and Direct3D". So, does/can/should Vulkan relate to this in any way?
Vulkan support was added in 2.0.6, their description is probably just outdated.
Excellent! Thank you.
dos Oct 31, 2018
Damn, I was about to start writing a small patch for SDL2 and hoping it might get into 2.0.9 :(

But there's plenty of important fixes for Wayland released now, so it's still good to see it out :D
dos Nov 1, 2018
"SDL render batching, which Ryan Gordon wrote about in this Patreon post" is not in 2.0.9. As Ryan writes in the very same post:

"This was a lot of work, and I'm thrilled with the end result. This project is sitting in the "SDL-ryan-batching-renderer" branch in revision control; we're about to ship SDL 2.0.9 and it's way too late to drop a change this huge into it, but it will merge thereafter."

Other than that, yay! SDL is likely my second most favourite open source project.

Hmm, the KDE protocol for window decorations is also only in that branch.
MayeulC Nov 1, 2018
It would be great if SDL2 had support for the consoles too. I guess the manufacturers don’t want bits of their oh so secret SDKs leaking out. (Or maybe it’s just too much work and nobody has wanted to do it…)

AFAIK it has console support too. Definitely the switch, at least! Though you need to be a registered Nitendo dev to get access to the source :/
MayeulC Nov 2, 2018
AFAIK it has console support too. Definitely the switch, at least! Though you need to be a registered Nitendo dev to get access to the source :/
Really? Too bad the official web site says nothing about this.
I have at least that source regarding the nitendo switch, and I was under impression that other consoles were supported as well: https://www.patreon.com/posts/sdl-update-for-17283075
I might be wrong, though :) I have no idea whether the website is up to date on these matters, but it definitely lags behind releases in other areas!
TheSyldat Nov 3, 2018
Speaking of SDL the website for it desperately needs an update and could use a donate button.

"But you could donate to Ryan's Patreon though" no when I donate to an open source project it's to the project that I donate not to a single individual so the absence of the donation button is concerning.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.