E foi lançada a SDL 2.30.2 junto com a nova visualização do SDL3, e muito mais. Confira as novidades dessa importante atualização.
SDL, ou Simple DirectMedia Layer, é uma biblioteca multimídia multiplataforma, livre e de código aberto, escrita em C e que representa uma interface simples para gráficos, som, e dispositivos de entrada de várias plataformas.
Esta biblioteca é amplamente usada por jogos multiplataforma, inclusive como parte do tempo de execução do Steam.
A palavra “layer” (camada) que está no nome da biblioteca existe para lembrar que ela na verdade pe um wrapper de várias funções específicas do sistema operacional.
Ou seja, o propósito principal do SDL é fornecer um framework comum para acessar essas funções. E para ir além desse objetivo, várias bibliotecas foram criadas para funcionar em conjunto com SDL.
O SDL é análogo ao DirectX, ao qual se poderia argumentar que o análogo do DirectX é o OpenGL. O DirectX também funciona com dispositivos de entrada e som.
Quando a Loki Software começou a portar jogos AAA no Linux, substituiu o Direct3D pelo OpenGL e não houve substituto para todo o resto e como hoje em dia é difícil escrever aplicativos em “X” mesmo com WinAPI na API X11, mas com DirectDraw na WinAPI que já é um problema, é como SDL nasceu.
Agora, foi anunciado o lançamento da nova versão do SDL 2.30.2.
Novidades do SDL 2.30.2
A camada de abstração de software/hardware Simple DirectMedia Layer comumente usada por jogos e outros softwares de plataforma cruzada foi lançada com uma nova versão estável do SDL 2.30.2, bem como uma nova versão de visualização do SDL3.
A versão SDL 2.30.2 corrige uma regressão de desempenho para inicialização do controlador no Linux, adiciona suporte para vários controladores mais recentes, corrige alguns mapeamentos de gamepad e outras alterações.
Entre o novo suporte de controlador está o SEGA Mega Drive Control Pad de 6 botões para Nintendo Online, MadCatz Saitek Side Panel Control Deck, Hori Fighting Stick EX2 e Yawman Arrow Flightstick.
- Correção de regressão de desempenho ao inicializar controladores no Linux
- Adicionado suporte para o SEGA Mega Drive Control Pad de 6 botões para Nintendo Online
- Adicionado suporte para o deck de controle do painel lateral MadCatz Saitek
- Adicionado suporte para Hori Fighting Stick EX2
- Adicionado suporte para o Flightstick Yawman Arrow
- Adicionado um mapeamento de gamepad para o Defender Joystick Cobra R4
- Corrigido o mapeamento do gamepad para o controlador Sanwa Supply JY-P76USV
- Pesquisa do estado inicial do controlador ao usar DirectInput
- Permitir usar SDL_RWFromFile() com pipes nomeados
Também foi lançada recentemente uma versão prévia do SDL 3.0 e agora também foi sucedida por uma segunda versão prévia para ajudar a examinar a atualização principal do SDL3.
A nova visualização do SDL3 tem correções de falhas, suporte para eventos brutos de teclado no Windows, correção de regressão de desempenho de inicialização do controlador para Linux e outras correções.
- Corrigida uma falha ao renderizar muito conteúdo usando o renderizador Vulkan
- Corrigida entrada de texto sendo entregue quando SDL_StartTextInput() não foi chamado
- Adicionado suporte para eventos de teclado brutos no Windows
- Corrigida uma regressão de desempenho ao inicializar controladores no Linux
- Separado o estado de energia do joystick em status e porcentagem da bateria
- Adicionado um parâmetro de usuário opcional aos principais pontos de entrada de retorno de chamada
- Funções de comparação de strings que não diferenciam maiúsculas de minúsculas não são mais afetadas pela localidade
Para saber mais sobre o SDL 2.30.2, acesse a nota de lançamento.
Como instalar ou atualizar o SDL
A instalação desta biblioteca no Linux é bastante simples, pois a maioria das distribuições Linux a possui em seus repositórios.
No caso do 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, no caso daqueles que são usuários do Arch Linux, só temos que executar o seguinte:
sudo pacman -S sdl2
Para os usuários de Fedora, Centos, RHEL ou qualquer distribuição baseada nestes, basta executar o seguinte comando:
sudo yum install SDL2
sudo yum install SDL2-devel
Para instalar em todas as outras distribuições do Linux, você pode pesquisar o pacote “sdl” ou “libsdl” para instalar ou baixar e compilar o código-fonte (é necessário ter o Git e os aplicativos necessário à compilação instalados no sistema).
Eles fazem isso com:
git clone https://hg.libsdl.org/SDL SDL
cd SDL
mkdir build
cd build
./configure
make
sudo make install