SDL 3.2: první oficiální stabilní verze přichází s vylepšeními pro Wayland, novými API a dalšími

SDL je sada knihoven vyvinutých v programovacím jazyce C, které poskytují základní funkce pro provádění multimediálních operací (audio a video), jakož i načítání a správu obrázků.

Nedávno bylo oznámeno vydání SDL 3.2, která je prezentována jako první stabilní verze větve SDL 3 a přinesla důležitá vylepšení, nové funkcionality, úpravy, API, opravy a další.

Pro ty, kteří neznají knihovnu SDL, měli byste vědět, že poskytuje nástroje, jako je hardwarově akcelerovaný 2D a 3D grafický výstup, zpracování vstupu, přehrávání zvuku, 3D výstup přes OpenGL/OpenGL ES a mnoho dalších souvisejících operací.

Hlavní nové funkce SDL 3.2

V SDL 3.2 je zvýrazněn Vylepšená podpora pro Wayland, to teď Ve výchozím nastavení je aktivován na systémech, které nabízejí kompatibilitu s Wayland a X11, pokud podporují rozšíření fifo-v1 a commit-timing-v1. Ve výchozím nastavení je prioritou také použití mediálního serveru PipeWire, který je považován za efektivnější než PulseAudio. Navíc byla přidána možnost zachytit video z webových kamer, pokud je k dispozici PipeWire.

Další novinkou je Přidána podpora pro grafické tablety a digitální peraspolu s optimalizovanou podporou displejů DPI. Stejně tak byla implementována správa barevného prostoru, která umožňuje pracovat s více konfiguracemi a poskytuje počáteční podporu pro HDR.

Při vylepšení zvuku, V SDL 3.2 byl kód zcela přepracován, začlenění nových nástrojů pro správu logických zvukových zařízení, usnadňuje práci různých částí programu s nezávislými zařízeními. Kromě toho byla zahrnuta funkce pro práci s audio streamy, provádění konverzí, úpravu vzorkovací frekvence, míchání zvuků a správu ukládání do vyrovnávací paměti spolu s možností upravit výšku a hlasitost. Konečně bylo zautomatizováno rozpoznávání připojených nebo odpojených zvukových zařízení a dynamická správa výchozího zvukového zařízení.

Další z nejpozoruhodnějších přírůstků je začlenění backendu do 2D rendering API, které vám umožní využít sílu Vulkanu pro vykreslování i manipulaci s povrchy pomocí tohoto API. Kromě toho došlo k velkému vyčištění funkcí považovaných za zastaralé, jako je podpora pro OpenGL ES 1.0 a DirectFB, spolu s odstraněním podpory pro starší platformy, jako je QNX, Pandora, WinRT a OS/2.

SDL 3.2 také zavádí možnost strukturování programů pomocí zpětného volání a definování smyčky zpracování událostí přímo v hlavní funkci kódu. Dále sa provedl změny v APTím se rozcházím s předchozí kompatibilitou, ale snažím se o větší soudržnost sjednocením pravidel pojmenování ve všech subsystémech.

V rámci zahrnuty nové nástroje, zdůrazňují několik API navržených pro pokrytí různých potřeb. Mezi nimi:

  • GPU API umožňuje multiplatformní přístup k funkcím 3D vykreslování, zatímco Dialog API usnadňuje výběr, otevírání a ukládání souborů a adresářů.
  • File System API přidává podporu pro správu adresářů a vyhledávání souborů, zatímco Storage API poskytuje abstraktní rozhraní pro interakci s různými úložnými systémy.
  • Camera API pro přístup k webové kameře
  • Pen API pro práci s grafickými tablety
  • Vlastnosti API pro správu parametrů ve formátu klíč–hodnota
  • Process API, které usnadňuje provádění a komunikaci se sekundárními procesy.
  • Metadata API bylo také přidáno k definování informací o aplikacích, které se používají v nabídkách v operačních systémech, jako je macOS.

Co se týče schránky, její funkčnost byla rozšířena, nyní umožňuje přenos dat v různých formátech. Z jeho strany byly vylepšeny možnosti pro správu vstupů z klávesnice a byly přidány možnosti konfigurace virtuálních klávesnic na zařízeních iOS a Android. Kromě toho byla zkontrolována a vylepšena dokumentace API, doplněná praktickými příklady, které lze spustit přímo z prohlížeče.

V neposlední řadě je třeba také poznamenat, že Spolu s SDL 3.2 byla uvolněna vrstva kompatibility sdl2, navržen zajistit plynulý přechod mezi SDL 2 a SDL 3. Tato komponenta umožňuje spouštět programy napsané pro SDL 2 s využitím funkcí nové větve, která funguje jako úplná náhrada za předchozí verzi.

Máte-li zájem dozvědět se o něm více, můžete se podívat na podrobnosti Na následujícím odkazu.