Os desenvolvedores por trás do projeto Simple DirectMedia Layer ou mais conhecido como "SDL" divulgou há poucos dias o anúncio do lançamento da nova versão SDL 2.0.12, que vem principalmente para adicionar el Suporte para vários controladores de videogame, bem como alguns recursos adicionais a esta biblioteca destinados a simplificar a escrita de jogos e aplicativos multimídia.
Para quem não conhece a biblioteca SDL, você deve saber que isso, fornece ferramentas como saída gráfica 2D e 3D acelerada por hardware, processamento de entrada, reprodução de áudio, saída 3D via OpenGL / OpenGL ES e muitas outras operações relacionadas.
SDL é oficialmente compatível com Windows, Mac OS X, Linux, iOS e Android, embora tenha suporte para outras plataformas como QNX, bem como outras arquiteturas e sistemas como Sega Dreamcast, GP32, GP2X, etc.
Camada simples do DirectMedia é escrito em C, funciona nativamente com C ++ e os links estão disponíveis para várias outras linguagens, incluindo C # e Python, é distribuído sob a licença zlib. Esta licença permite que você use o SDL livremente em qualquer software.
Apesar de ser programado em C, possui wrappers para outras linguagens de programação como C ++, Ada, C #, BASIC, Erlang, Lua, Java, Python, etc.
O que há de novo no Simple DirectMedia Layer 2.0.12?
Com o lançamento desta nova versão da biblioteca, os desenvolvedores citam como principal novidade o compatibilidade com controladores de jogo Nintendo GameCube e o indicador SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE para determinar o fato de seu uso, eles são adicionados ao controlador HIDAPI. O HIDAPI também melhorou o suporte para Xbox 360 e Xbox One;
Além de mencionar o trabalho que foi feito para adicionar o suporte para controladores de jogo:
- 8BitDo FC30 Pro
- Controle de jogo 8BitDo M30
- BDA PS4 Fightpad
- Comandante de Combate HORI
- Duque Hyperkin
- Hiperkin X91
- MOGA XP5-A Plus
- NACON GC-400ES
- Controlador NVIDIA v01.04
- PDP versus painel de combate
- Razer Raion Fightpad para PS4
- Razer Serval
- Stadia Controller
- SteelSeries Stratus Duo
- Victrix Pro Fight Stick para PS4
- Xbox One Elite Série 2
Além disso, funções foram adicionadas SDL_GetTextureScaleMode () e SDL_SetTextureScaleMode () para obter e definir o modo de escala usado para texturas, a função SDL_LockTextureToSurface (), semelhante a SDL_LockTexture (), mas trata a área bloqueada como superfície SDL, além de um novo modo de mesclagem foi adicionado SDL_BLENDMODE_MUL.
A função SDL_GameControllerTypeForIndex () fornece uma conclusão sobre o tipo de controlador de jogo (Xbox 360, Xbox One, PS3, PS4, Nintendo Switch Pro).
Funções adicionadas SDL_JoystickFromPlayerIndex (), SDL_JoystickSetPlayerIndex (), SDL_GameControllerSetPlayerIndex () e SDL_GameControllerFromPlayerIndex () para determinar e instalar o dispositivo associado ao índice do jogador.
Enquanto para Android, a capacidade de capturar som usando OpenSL-ES foi adicionada e a suporte para usar o controlador Bluetooth Steam como um controlador de jogo.
Das outras mudanças mencionadas:
- Adicionada a macro SDL_zeroa () para zerar um array de elementos.
- Adicionada função SDL_HasARMSIMD () para definir o suporte para instruções ARM SIMD na CPU ARMv6 +.
- Para sistemas Linux, os recursos .SDL_HINT_VIDEO_X11_WINDOW_VISUALID (definição de um identificador de saída para novas janelas X11) e SDL_HINT_VIDEO_X11_FORCE_EGL (opção para usar GLX ou EGL para X11) são implementados.
Como instalar o Simple DirectMedia Layer no Linux?
A instalação desta biblioteca no Linux é bastante simples, pois a maioria das distribuições Linux a possui em seus repositórios.
Para o caso de Debian, Ubuntu e distribuições derivadas destes, você só terá que executar os seguintes comandos em um terminal:
sudo apt-get install libsdl2-2.0 sudo apt-get install libsdl2-dev
Enquanto para o caso daqueles que são vocêsSuarios do Arch Linux, só precisamos executar o seguinte:
sudo pacman -S sdl2
No caso de quem é usuário de Fedora, Centos, RHEL ou qualquer distribuição baseada neles, eles só precisam executar o seguinte comando:
sudo yum install SDL2 sudo yum install SDL2-devel
Para todas as outras distribuições Linux, eles podem procurar o pacote "sdl" ou "libsdl" para instalação ou baixar e compilar o código-fonte.
Eles fazem isso com:
hg clone https://hg.libsdl.org/SDL SDL cd SDL mkdir build cd build ./configure make sudo make install