Bol predstavený uvoľnenie knižnice SDL 3.2.0 (Simple DirectMedia Layer), ktorá je označená ako prvé oficiálne stabilné vydanie vetvy SDL 3. Knižnica je zameraná na zjednodušenie písania hier a multimediálnych aplikácií a poskytuje také možnosti, ako je hardvérové urýchlenie výstupu 2D a 3D grafiky, spracovanie vstupu, prehrávanie zvuku a výstup 3D cez OpenGL, OpenGL ES, Metal, Direct3D alebo Vulkan. Kód je napísaný v jazyku C a je distribuovaný pod licenciou Zlib. Poskytujú sa obálky na používanie SDL v projektoch v rôznych programovacích jazykoch.
Hlavné novinky:
- Podpora protokolu Wayland bola výrazne vylepšená, teraz je aktivovaná predvolene v prostrediach, ktoré poskytujú súčasnú podporu Wayland a X11 a podporujú rozšírenia protokolu fifo-v1 a commit-timing-v1.
- Predvolene je zapojený multimediálny server PipeWire, ktorý je označený ako prioritnejší než PulseAudio.
- Pridaná podpora pre videový capture z webových kamier (v prípade, že je prítomný PipeWire).
- Pridaná možnosť používať grafické tablety a digitálne perá.
- Podpora obrazoviek s vysokou hustotou pixelov (High DPI) bola významne vylepšená.
- Pridaná podpora farebných priestorov a možnosť spravovať niekoľko farebných priestorov. Implementovaná počiatočná podpora HDR.
- Kód pre prácu so zvukom bol kompletne prepracovaný. Pridaná podpora logických zvukových zariadení (rôzne časti programu môžu pracovať so svojím vlastným zvukovým zariadením). Pridané nástroje pre prácu so zvukovými prúdmi, konverziu prúdov, zmenu vzorkovacej frekvencie, miešanie, spravovanie vyrovnávacej pamäte, zmenu tónu a hlasitosti. Realizovaná automatická správa pripojenia alebo odpojenia zvukových zariadení, ako aj zmena predvoleného zvukového zariadenia.
- Do API 2D vykresľovania bol pridaný backend pre vykresľovanie cez API Vulkan. Pridané funkcie pre prácu s povrchmi cez API Vulkan.
- Prebehla veľká úprava zastaraných funkcií, ktoré stratili význam v moderných reáliách. Napríklad bola ukončená podpora OpenGL ES 1.0 a DirectFB, odstránený kód pre prácu na zastaraných platformách, ako sú QNX, Pandora, WinRT a OS/2.
- Bola umožnená organizácia práce programu s využitím callback volaní a definovaním cyklu spracovania udalostí vo funkcii main().
- V API boli vykonané zmeny, ktoré narúšajú kompatibilitu. Unifikovali sa pravidlá pomenovania API — volania v rôznych subsystémoch sa teraz nazývajú pomocou jednej spoločnej schémy.
- Pridané nové API:
- GPU API — multiplatformový prístup k GPU a možnostiam 3D renderovania.
- Dialog API — používanie dialógov na výber/otvorenie/uloženie súborov a adresárov.
- Filesystem API — operácie s файловou система, správa adresárov a vyhľadávanie súborov.
- Storage API — abstraktné programové rozhranie pre prístup k rôznym systémom ukladania dát.
- Camera API — prístup k webovým kamerám.
- Pen API — práca s grafickými tabletmi a digitálnymi perami, ako sú Wacom a Apple Pencil.
-
Zdroj: opennet.ru
