Recientemente SDL 2.0.10 Library Release Announced (Simple Direct Layer), whose objective is to simplify the writing of games and multimedia applications.
Simple Direct Media Layer is a cross-platform development library designed to provide low-level access to audio hardware, keyboard, mouse, joystick, and graphics via OpenGL and Direct3D. It is used by popular video player software, emulators, and games, including Valve's award-winning catalog and many Humble Bundle games.
Table of Contents
About Simple DirectMedia Layer
The librariana 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.
Simple Direct Media Layer 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.
Main new features of Simple DirectMedia Layer 2.0.10
In the release of this new version of Simple DirectMedia Layer 2.0.10 driver removed to work using Mir display server in favor of the controller to work through Wayland.
Macros SDL_RW * become a separate set of functions and the functions were added SDL_SIMDGetAlignment (), SDL_SIMDAlloc () and SDL_SIMDFree () to allocate memory for operations SIMD.
The developers note that the SDL rendering API is translated by default using batch rendering, which enables better performance. Option SDL_HINT_RENDER_BATCHING added to control batch mode.
For iOS 13 and tvOS 13, support for Xbox and PS4 wireless controllers has been added, as well as text input using Bluetooth keyboards.
For Android, a low latency sound processing mode implemented with OpenSL ES is implemented.
Added option SDL_HINT_ANDROID_BLOCK_ON_PAUSE to control the blocking of the event loop when the application is suspended.
Of the other changes that stand out in this new version are:
- Added SDL_RenderDefex SDL
- Added function SDL_GetTouchDeviceType() to determine the type of touch device (touch panel or touch screen with relative or absolute coordinates)
- To force the execution of queued batch commands, the call has been added SDL_RenderFlush(), which can be useful in the case of a combination of drawing via SDL and direct drawing;
- Added option SDL_HINT_EVENT_LOGGING to enable SDL event logging for debugging purposes
- Added option SDL_HINT_GAMECONTROLLERCONFIG_FILE to set the file name with the layout for the game controllers;
- Added option SDL_HINT_MOUSE_TOUCH_EVENTS to control the synthesis of touch events based on mouse events
- Improved handling of malformed WAVE and BMP files to block potential vulnerabilities
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 https://hg.libsdl.org/SDL SDL cd SDL mkdir build cd build ./configure make sudo make install
Regarding the implementation and use information. They can consult the following link.