SDL 3.4.0: Gimtoji PNG, HDR ir „Switch 2“ valdiklių palaikymo versija

Pagrindiniai klausimai:
  • Gimtoji PNG vaizdų įkėlimo ir išsaugojimo be išorinių bibliotekų palaikymo funkcija.
  • Patobulinta GPU API ir 2D atvaizdavimo įrenginio sąveika su HDR palaikymu.
  • Naujas „Pixel Art“ mastelio keitimo režimas, skirtas išvengti suliejimo retro grafikoje.
  • Progreso indikatoriai užduočių juostoje, skirtose „Windows“ ir „Linux“.
  • „Nintendo Switch 2“ valdiklių palaikymas ir „WebAssembly“ patobulinimai.

SDL – tai C programavimo kalba sukurtas bibliotekų rinkinys, teikiantis pagrindines funkcijas atliekant daugialypės terpės operacijas (garso ir vaizdo įrašus), taip pat vaizdų įkėlimą ir valdymą.

Kūrėjų komanda už nugaros „Simple DirectMedia Layer“ (SDL) oficialiai paskelbė apie 3.4.0 versijos pasirodymą.konsoliduojant antrąją pagrindinę stabilią 3.x serijos šaką. Po 3.2.x versijos debiuto ir 3.3.x versijos eksperimentinio testavimo laikotarpio šis atnaujinimas pateikiamas su aiškiu tikslu: supaprastinti grafinių išteklių valdymą ir sumažinti atotrūkį tarp aukšto lygio 2D vaizdavimo ir gilios GPU prieigos, taip pat paruošti dirvą naujos kartos aparatinei įrangai.

Tiems, kurie nežino apie SDL biblioteką, turėtumėte žinoti, kad joje yra tokių įrankių kaip aparatinės įrangos pagreitinta 2D ir 3D grafikos išvestis, įvesties apdorojimas, garso atkūrimas, 3D išvestis per OpenGL/OpenGL ES ir daugelis kitų susijusių operacijų.

Pagrindinės naujos SDL 3.4.0 savybės

vienas iš labiausiai švenčiamų pokyčių kūrėjų bendruomenės yra Įtrauktas vietinis PNG vaizdų palaikymas. istoriškai Dirbant su šiuo formatu reikėjo pasikliauti išorinėmis bibliotekomis pavyzdžiui, SDL_image, kuris padidino kompiliavimo grandinės sudėtingumą. Su SDL 3.4.0, tokios funkcijos kaip SDL_LoadPNG ir SDL_SavePNG yra tiesiogiai integruotos. esmė, leidžianti įkelti ir išsaugoti grafiką be papildomų priklausomybių. Be to, buvo įdiegtos priemonės, kurios automatiškai aptinka formatus tarp BMP ir PNG, taip pat naujos galimybės grafiniams paviršiams pasukti, palengvinančios pagrindinį vaizdų manipuliavimą prieš jiems pasiekiant ekraną.

Be to, riba tarp paprastų 2D vaizdavimo API ir sudėtingos GPU prieigos gerokai išblukėjo.Ši versija pasižymi patobulintu sąveikumu tai leidžia kūrėjams Naudokite GPU API sukurtas tekstūras tiesiai 2D vaizdavime ir atvirkščiai. Tai papildo galimybė į 2D atvaizdavimo įrankį įterpti pasirinktinius fragmentų šešėliavimo įrankius, atveriant duris pažangiems vaizdo efektams, nereikalaujant kurti grafikos variklio nuo nulio. Be to, YUV tekstūrų ir HDR (didelio dinaminio diapazono) spalvų erdvių palaikymas dabar yra realybė, o tai būtina šiuolaikinėms vaizdo ir multimedijos programoms, kurioms reikalinga išskirtinė spalvų raiška.

Retro stiliaus žaidimų kūrėjams, Pridėtas specialus mastelio keitimo režimas, vadinamas „Pixel Art“.Šis algoritmas optimizuoja mažos skiriamosios gebos vaizdų dydžio keitimą, kad būtų išvengta įprasto suliejimo, kuris atsiranda tempiant grafiką šiuolaikiniuose monitoriuose, išsaugant pradinių pikselių ryškumą.

Sistemų integracija ir WebAssembly

Galutinio vartotojo patirčiai taip pat skiriamas dėmesys per patobulinta integracija su darbalaukio aplinkaDabar, Programos gali pranešti apie ilgos operacijos eigą (kaip įkėlimo arba diegimo programa) tiesiai į užduočių juostos piktogramą tiek „Windows“, tiek „Linux“ sistemose, suteikiant tiesioginį vaizdinį grįžtamąjį ryšį nereikalaujant, kad langas būtų priekiniame plane. Žiniatinklio srityje patobulinta „Emscripten“ kompiliacija, siūlanti patobulintą drobės ir klaviatūros valdymą projektams, eksportuojantiems į „WebAssembly“, o tai yra gyvybiškai svarbu norint paleisti vietinius žaidimus naršyklėse.

Aparatinės įrangos palaikymas ir įvestis

Kalbant apie aparatinę įrangą, SDL 3.4.0 lenkia rinką, pridėdama preliminarią būsimo „Nintendo Switch 2“ valdiklių paramą. prijungtas per USB. Taip pat Suderinamumas išplėstas, įtraukiant dabartinius periferinius įrenginius iš tokių prekių ženklų kaip „8BitDo“ ir „FlyDigi“.Kita vertus, sąveika su grafinėmis planšetėmis ir skaitmeniniais rašikliais buvo patobulinta, todėl galima atskirti, ar rašiklis sąveikauja su ekranu, ar su išorine skaitmeninimo planšete, o tai pagerina piešimo ir dizaino programų tikslumą.

Galiausiai, „Linux“ vartotojams naujoje versijoje integruotas patobulintas įgyvendinimas Wayland aplinkoje ir atominių operacijų palaikymas KMSDRM, užtikrinant, kad biblioteka išliktų pageidaujamu pasirinkimu kuriant atvirojo kodo sistemas.

„iOS“ sistemoje SDL dabar palaiko langų scenas, todėl ištaisoma įspėjimo „UIKIT CLIENT REIKALINGA ATNAUJINTI“ klaida, o SDL_PROP_WINDOW_CREATE_WINDOWSCENE_POINTER buvo pridėtas, kad būtų galima nurodyti lango sceną.

Galiausiai, jei norite sužinoti daugiau apie tai, galite sužinoti daugiau Šioje nuorodoje.