Simple DirectMedia Layer 2.0.12 llega con soporte para diferentes mandos de juegos y más
Los desarrolladores que están detrás del proyecto de Simple DirectMedia Layer o mejor conocido como “SDL” dieron a conocer hace pocos días el anuncio de la liberación de la nueva versión SDL 2.0.12, la cual llega principalmente a añadir el soporte de diversos mandos de videojuegos, así como algunas características adicionales a esta biblioteca destinada a simplificar la escritura de juegos y aplicaciones multimedia.
Para quienes desconocen de la biblioteca SDL, deben saber que esta, proporciona herramientas como salida de gráficos 2D y 3D acelerada por hardware, procesamiento de entrada, reproducción de audio, salida 3D a través de OpenGL/OpenGL ES y muchas otras operaciones relacionadas.
SDL es oficialmente compatible con Windows, Mac OS X, Linux, iOS y Android, aun que cuenta con el soporte para otras plataformas como QNX, además de otras arquitecturas y sistemas como Sega Dreamcast, GP32, GP2X, etc.
Simple DirectMedia Layer está escrito en C, funciona de forma nativa con C ++ y hay enlaces disponibles para varios otros idiomas, incluidos C # y Python, se distribuye bajo la licencia zlib . Esta licencia le permite usar SDL libremente en cualquier software.
Pese a estar programado en C, tiene wrappers a otros lenguajes de programación como C++, Ada, C#, BASIC, Erlang, Lua, Java, Python, etc.
¿Qué hay de nuevo en Simple DirectMedia Layer 2.0.12?
Con la liberación de esta nueva versión de la biblioteca, los desarrolladores mencionan como novedad principal la compatibilidad con los controladores de juegos Nintendo GameCube y el indicador SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE para determinar el hecho de su uso se agregan al controlador HIDAPI. HIDAPI también ha mejorado el soporte para Xbox 360 y Xbox One;
Ademas de que se menciona el trabajo que se realizo para añadir el soporte para controladores de juegos:
- 8BitDo FC30 Pro
- 8BitDo M30 GamePad
- BDA PS4 Fightpad
- HORI Fighting Commander
- Hyperkin Duke
- Hyperkin X91
- MOGA XP5-A Plus
- NACON GC-400ES
- NVIDIA Controller 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
Ademas de ello, se agregaron las funciones SDL_GetTextureScaleMode () y SDL_SetTextureScaleMode () para obtener y establecer el modo de escala utilizado para las texturas, la función SDL_LockTextureToSurface (), similar a SDL_LockTexture (), pero trata el área bloqueada como SDL Surface, ademas de que se agregó un nuevo modo de fusión SDL_BLENDMODE_MUL.
La función SDL_GameControllerTypeForIndex () proporciona una conclusión del tipo de controlador de juego (Xbox 360, Xbox One, PS3, PS4, Nintendo Switch Pro).
Funciones agregadas SDL_JoystickFromPlayerIndex (), SDL_JoystickSetPlayerIndex (), SDL_GameControllerSetPlayerIndex () y SDL_GameControllerFromPlayerIndex () para determinar e instalar el dispositivo asociado con el índice del jugador.
Mientras que para Android, se agrega la capacidad de capturar sonido usando OpenSL-ES y se implementa el soporte para usar Bluetooth Steam Controller como un controlador de juego.
De los demás cambios que se mencionan:
- Se agregó la macro SDL_zeroa () para poner a cero una matriz de elementos.
- Se agregó la función SDL_HasARMSIMD () para definir el soporte para las instrucciones SIMD ARM en la CPU ARMv6 +.
- Para sistemas Linux, se implementan las características .SDL_HINT_VIDEO_X11_WINDOW_VISUALID (definición de un identificador de salida para las nuevas ventanas X11) y SDL_HINT_VIDEO_X11_FORCE_EGL (opción de usar GLX o EGL para X11).
¿Como instalar Simple DirectMedia Layer en Linux?
La instalación de esta biblioteca en Linux es bastante sencilla puesto que la mayoría de las distribuciones de Linux cuentan con ella dentro de sus repositorios.
Para el caso de Debian, Ubuntu y distribuciones derivadas de estos, solo tendrán que ejecutar los siguientes comandos en una terminal:
sudo apt-get install libsdl2-2.0 sudo apt-get install libsdl2-dev
Mientras que para el caso de los que son usuarios de Arch Linux solo tenemos que ejecutar lo siguiente:
sudo pacman -S sdl2
Para el caso de los que son usuarios de Fedora, Centos, RHEL o cualquier distribución basada en estas, solo tienen que ejecutar el siguiente comando:
sudo yum install SDL2 sudo yum install SDL2-devel
Para el resto de las distribuciones de Linux, pueden realizar la búsqueda del paquete “sdl” o “libsdl” para su instalación o realizar la descarga y compilación del código fuente.
Esto lo hacen con:
hg clone https://hg.libsdl.org/SDL SDL cd SDL mkdir build cd build ./configure make sudo make install