Diversi giorni fa è stato annunciato il rilascio della nuova versione della libreria SDL 2.0.16 (Simple DirectMedia Layer), progettato per semplificare la scrittura di giochi e applicazioni multimediali. In questa nuova versione sono state aggiunte varie modifiche, tra cui spiccano i miglioramenti del supporto per Wayland, così come la capacità di generare e catturare audio utilizzando il server multimediale Pipewire e altre cose.
Per chi non conosce la biblioteca SDL, dovresti sapere che questo, fornisce strumenti come output di grafica 2D e 3D con accelerazione hardware, elaborazione degli input, riproduzione audio, output 3D tramite OpenGL / OpenGL ES e molte altre operazioni correlate.
SDL è ufficialmente compatibile con Windows, Mac OS X, Linux, iOS e Android, sebbene abbia il supporto per altre piattaforme come QNX, oltre ad altre architetture e sistemi come Sega Dreamcast, GP32, GP2X, ecc.
Livello DirectMedia semplice è scritto in C, funziona in modo nativo con C ++ e sono disponibili collegamenti per diversi altri linguaggi, tra cui C# e Python, è distribuito con licenza zlib, questa licenza consente di utilizzare SDL liberamente in qualsiasi software.
Nonostante sia programmato in C, ha wrapper per altri linguaggi di programmazione come C ++, Ada, C #, BASIC, Erlang, Lua, Java, Python, ecc.
Principali nuove funzionalità di SDL 2.0.16
In questa nuova versione di SDL, una delle novità che spicca è che il supporto per Wayland è stato migliorato enormemente, inoltre aggiunta la possibilità di generare e acquisire audio utilizzando Pipewire Media Server e AAudio (Android) e anche il supporto per i controller di gioco Amazon Luna e Xbox Series X.
Un altro cambiamento che possiamo trovare è chee aggiunto supporto per l'effetto di vibrazione adattiva (rimbombare) in Controller Google Stadia e Nintendo Switch Pro quando si utilizza il driver HIDAPI.
Oltre a ciò Il carico della CPU è stato ridotto durante l'elaborazione delle chiamate SDL_WaitEvent () e SDL_WaitEventTimeout () ed è stata aggiunta anche una definizione di estensioni SIMD compatibili con la piattaforma Elbrus.
Per la parte delle nuove funzionalità che sono stati proposti in questa nuova versione, si menzionano i seguenti:
- SDL_FlashWindow () - Ti permette di catturare l'attenzione dell'utente.
- SDL_GetAudioDeviceSpec(): serve per ottenere informazioni sul formato audio preferito per il dispositivo specificato.
- SDL_SetWindowAlwaysOnTop(): ha lo scopo di cambiare dinamicamente il flag SDL_WINDOW_ALWAYS_ON_TOP (ancora su altro contenuto) per la finestra selezionata.
- SDL_SetWindowKeyboardGrab(): per catturare l'input della tastiera indipendentemente dal mouse.
- SDL_SoftStretchLinear(): per il ridimensionamento bilineare tra superfici a 32 bit.
- SDL_UpdateNVTexture(): per aggiornare le trame in NV12/21.
- SDL_GameControllerSendEffect () e SDL_JoystickSendEffect (): per inviare effetti personalizzati ai controller di gioco DualSense.
- SDL_GameControllerGetSensorDataRate(): per ottenere dati sull'intensità delle informazioni ricevute dai sensori dei controller di gioco PlayStation e Nintendo Switch.
- SDL_AndroidShowToast(): permette di mostrare le notifiche luminose sulla piattaforma Android.
Infine se sei interessato a saperne di più di questa nuova versione, puoi controllare il file dettagli nel seguente collegamento.
Come installare Simple DirectMedia Layer su Linux?
L'installazione di questa libreria su Linux è abbastanza semplice poiché la maggior parte delle distribuzioni Linux l'ha all'interno dei propri repository.
In caso di Debian, Ubuntu e le distribuzioni derivate da questi, dovrai solo eseguire i seguenti comandi in un terminale:
sudo apt-get install libsdl2-2.0 sudo apt-get install libsdl2-dev
Mentre per il caso di chi sei uSuarios di Arch Linux dobbiamo solo eseguire quanto segue:
sudo pacman -S sdl2
Nel caso di coloro che sono utenti di Fedora, Centos, RHEL o qualsiasi distribuzione basata su di essi, devono solo eseguire il seguente comando:
sudo yum install SDL2 sudo yum install SDL2-devel
Per tutte le altre distribuzioni Linux, possono cercare il pacchetto "sdl" o "libsdl" per l'installazione o il download e compilare il codice sorgente.
Lo fanno con:
git clone https://hg.libsdl.org/SDL SDL cd SDL mkdir build cd build ./configure make sudo make install