Simple DirectMedia Layer 2.0.12 comes with support for different game controllers and more

The developers behind the Simple DirectMedia Layer project or better known as "SDL" released a few days ago the announcement of the release of the new version SDL 2.0.12, which comes mainly to add el support of various video game controllers, as well as some additional features to this library designed to simplify the writing of games and multimedia applications.

For those who do not know about the library SDL, you should know that this, provides tools such as hardware accelerated 2D and 3D graphics output, input processing, audio playback, 3D output via OpenGL / OpenGL ES and many other related operations.

SDL it is officially compatible with Windows, Mac OS X, Linux, iOS and Android, although it has the support for other platforms such as QNX, in addition to other architectures and systems such as Sega Dreamcast, GP32, GP2X, etc.

Simple Direct Media Layer is written in C, works natively with C ++ and there are links available for several other languages, including C # and Python, it is distributed under the zlib license. This license allows you to use SDL freely in any software.

Despite being programmed in C, it has wrappers to other programming languages ​​such as C ++, Ada, C #, BASIC, Erlang, Lua, Java, Python, etc.

What's new in Simple DirectMedia Layer 2.0.12?

With the release of this new version of the library, the developers mention as a main novelty the compatibility with Nintendo GameCube game controllers and the indicator SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE to determine the fact of their use they are added to the HIDAPI controller. HIDAPI has also improved support for Xbox 360 and Xbox One;

In addition to mentioning the work that was done to add the support for game controllers:

  • 8BitDo FC30 Pro
  • 8BitDo M30 GamePad
  • BDA PS4 Fightpad
  • HORI Fighting Commander
  • Hyperkin duke
  • Hyperkin X91
  • MOGA XP5-A Plus
  • NACON GC-400ES
  • NVIDIA Driver v01.04
  • PDP Versus Fighting Pad
  • Razer Raion Fightpad for PS4
  • Razer Serval
  • Stadia Controller
  • SteelSeries Stratus Duo
  • Victrix Pro Fight Stick for PS4
  • Xbox One Elite Series 2

Besides that, functions were added SDL_GetTextureScaleMode () and SDL_SetTextureScaleMode () to get and set the scale mode used for textures, The SDL_LockTextureToSurface (), similar to SDL_LockTexture (), but treats the locked area as SDL Surface, plus a new blending mode was added SDL_BLENDMODE_MUL.

The SDL_GameControllerTypeForIndex () function provides a conclusion of the type of game controller (Xbox 360, Xbox One, PS3, PS4, Nintendo Switch Pro).

Added functions SDL_JoystickFromPlayerIndex (), SDL_JoystickSetPlayerIndex (), SDL_GameControllerSetPlayerIndex () and SDL_GameControllerFromPlayerIndex () to determine and install the device associated with the player's index.

While for Android, the ability to capture sound using OpenSL-ES is added and the support to use Bluetooth Steam Controller as a game controller.

Of the other changes mentioned:

  • Added the SDL_zeroa () macro to zero an array of elements.
  • Added SDL_HasARMSIMD () function to define support for ARM SIMD instructions on ARMv6 + CPU.
  • For Linux systems, the features .SDL_HINT_VIDEO_X11_WINDOW_VISUALID (definition of an output identifier for new X11 windows) and SDL_HINT_VIDEO_X11_FORCE_EGL (option to use GLX or EGL for X11) are implemented.

How to install Simple DirectMedia Layer on Linux?

Installing this library on Linux is quite simple since most Linux distributions have it within their repositories.

In the case of Debian, Ubuntu and distributions derived from these, you will only have to run the following commands in a terminal:

sudo apt-get install libsdl2-2.0
sudo apt-get install libsdl2-dev

While for the case of those who are uArch Linux suarios we just have to run the following:

sudo pacman -S sdl2

In the case of those who are users of Fedora, Centos, RHEL or any distribution based on them, they just have to run the following command:

sudo yum install SDL2
sudo yum install SDL2-devel

For all other Linux distributions, they can search for the package "sdl" or "libsdl" for installation or download and compile the source code.

They do this with:

hg clone SDL
cd SDL
mkdir build
cd build
sudo make install

The content of the article adheres to our principles of editorial ethics. To report an error click here!.

Be the first to comment

Leave a Comment

Your email address will not be published. Required fields are marked with *



  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.