SDL 3.2: stiže prva službena stabilna verzija s poboljšanjima za Wayland, novim API-jima i više

SDL je skup biblioteka razvijenih u programskom jeziku C koje pružaju osnovne funkcije za izvođenje multimedijskih operacija (audio i video), kao i učitavanje i upravljanje slikama.

nedavno, najavljeno je izdanje SDL 3.2, koji je predstavljen kao prva stabilna verzija grane SDL 3 i uveo je važna poboljšanja, nove funkcionalnosti, prilagodbe, API-je, ispravke i više.

Za one koji nisu svjesni SDL biblioteke, trebali biste znati da ona pruža alate kao što su hardverski ubrzani 2D i 3D grafički izlaz, obrada ulaza, audio reprodukcija, 3D izlaz kroz OpenGL/OpenGL ES i mnoge druge povezane operacije.

Glavne nove značajke SDL 3.2

U SDL 3.2 to je istaknuto Poboljšana podrška za Wayland, to sada Aktivira se prema zadanim postavkama na sustavima koji nude kompatibilnost s Waylandom i X11, sve dok podržavaju ekstenzije fifo-v1 i commit-timing-v1. Korištenje PipeWire medijskog poslužitelja, koji se smatra učinkovitijim od PulseAudio, također ima prioritet prema zadanim postavkama. Dodatno, dodana je mogućnost snimanja videa s web kamera, pod uvjetom da je PipeWire dostupan.

Još jedna novost je Dodana podrška za grafičke tablete i digitalne olovke, zajedno s optimiziranom podrškom za DPI zaslone. Isto tako, implementirano je upravljanje prostorom boja, što vam omogućuje rad s više konfiguracija i pruža početnu podršku za HDR.

U poboljšanju zvuka, U SDL 3.2 kod je potpuno redizajniran, uključivanje novih alata za upravljanje logičkim audio uređajima, olakšavajući različitim dijelovima programa rad s neovisnim uređajima. Dodatno, uključena je funkcionalnost za rad s audio streamovima, izvođenje pretvorbi, podešavanje brzine uzorkovanja, miksanje zvukova i upravljanje međuspremnikom, zajedno s mogućnošću izmjene visine i glasnoće. Konačno, automatizirano je prepoznavanje spojenih ili isključenih zvučnih uređaja i dinamičko upravljanje zadanim zvučnim uređajima.

Još jedan od najznačajnijih dodataka je ugradnja pozadine u API za 2D renderiranje, što vam omogućuje da iskoristite snagu Vulkana za iscrtavanje i manipuliranje površinama pomoću ovog API-ja. Dodatno, došlo je do velikog čišćenja značajki koje se smatraju zastarjelima, kao što je podrška za OpenGL ES 1.0 i DirectFB, zajedno s uklanjanjem podrške za naslijeđene platforme kao što su QNX, Pandora, WinRT i OS/2.

SDL 3.2 također predstavlja mogućnost strukturiranja programa korištenjem povratnog poziva i definiranja procesne petlje događaja izravno u glavnoj funkciji koda. Nadalje, si provedene promjene u APJa prekidam s prethodnom kompatibilnošću, ali tražim veću koherentnost objedinjavanjem pravila imenovanja u svim podsustavima.

Unutar uključeni novi alati, ističu nekoliko API-ja dizajniranih za pokrivanje različitih potreba. Između njih:

  • GPU API omogućuje višeplatformski pristup funkcijama 3D renderiranja, dok Dialog API olakšava odabir, otvaranje i spremanje datoteka i direktorija.
  • File System API dodaje podršku za upravljanje direktorijima i pretraživanje datoteka, dok Storage API pruža apstraktno sučelje za interakciju s različitim sustavima za pohranu.
  • Camera API za pristup web kameri
  • Pen API za rad s grafičkim tabletima
  • Properties API za upravljanje parametrima u formatu ključ-vrijednost
  • Procesni API koji olakšava izvođenje i komunikaciju sa sekundarnim procesima.
  • Metadata API također je dodan za definiranje informacija o aplikacijama koje se koriste u izbornicima u operativnim sustavima kao što je macOS.

Što se međuspremnika tiče, njegova funkcionalnost je proširena, sada omogućuje prijenos podataka u više formata. Sa svoje strane, poboljšane su mogućnosti za upravljanje unosima tipkovnice, dodajući opcije za konfiguriranje virtualnih tipkovnica na iOS i Android uređajima. Osim toga, API dokumentacija je pregledana i poboljšana, popraćena praktičnim primjerima koji se mogu izvršiti izravno iz preglednika.

Na kraju, ali ne manje važno, treba također napomenuti da Uz SDL 3.2, objavljen je sloj kompatibilnosti sdl2-compat, dizajniran kako bi se omogućio besprijekoran prijelaz između SDL 2 i SDL 3. Ova komponenta vam omogućuje pokretanje programa napisanih za SDL 2 iskorištavanjem funkcionalnosti nove grane, djelujući kao potpuna zamjena za prethodnu verziju.

Ako želite saznati više o tome, možete pogledati detalje U sljedećem linku.