Välja antud SDL 2.0.18 (Simple DirectMedia Layer) teek, mille eesmärk on lihtsustada mängude ja multimeedia rakenduste kirjutamist. SDL teek pakub selliseid vahendeid nagu riistvaraliselt kiirendatud 2D- ja 3D-graafika väljund, sisendi töötlemine, heli taasesitamine, 3D väljund OpenGL/OpenGL ES/Vulkani kaudu ja palju muid seotud toiminguid. Teek on kirjutatud C keeles ja levitatakse zlib litsentsi alusel. SDL funktsioonide kasutamiseks erinevates programmeerimiskeeltes on olemas sidumised. Teegi kood jagatakse Zlib litsentsi alusel.
Uues väljaandes:
- Iga funktsiooni jaoks on esitatud teave SDL-i versiooni kohta, milles see funktsioon ilmus. Tagatud on dokumentatsiooni automaatne sünkroniseerimine wiki ja pealkirjafailide vahel.
- Lisatud uued funktsioonid:
- SDL_RenderGeometry() ja SDL_RenderGeometryRaw() juhuslike kujundite joonistamiseks 2D Render API kaudu.
- SDL_SetTextureUserData() ja SDL_GetTextureUserData() rakenduse andmete sidumiseks tekstuuriga.
- SDL_RenderWindowToLogical() ja SDL_RenderLogicalToWindow() akna koordinaatide ja loogiliste joonistamiskoordinaatide vaheliseks teisendamiseks.
- SDL_RenderSetVSync() väljundi sünkroonimise lubamiseks kaadriga (vblank).
- SDL_PremultiplyAlpha() läbipaistvuse rakendamiseks pikslite plokkidele formaadis SDL_PIXELFORMAT_ARGB8888.
- SDL_SetWindowMouseRect() ja SDL_GetWindowMouseRect() hiire liikumise piiramiseks määratud akna alas.
- SDL_GameControllerHasRumble(), SDL_GameControllerHasRumbleTriggers(), SDL_JoystickHasRumble() ja SDL_JoystickHasRumbleTriggers() mängukontrolleri ja puldiga vibratsiooni toetuse kontrollimiseks.
- SDL_GetWindowICCProfile() akna värvilise ICC-profiili saamiseks (profiili muutuse kontrollimiseks pakutakse sündmust SDL_WINDOWEVENT_ICCPROF_CHANGED).
- Lisatud uued näidised: SDL_HINT_APP_NAME rakenduse nime edastamiseks ja SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY akende EGL läbipaistvuse lubamiseks.
- Lisatud uus aknasündmus SDL_WINDOWEVENT_DISPLAY_CHANGED, mis genereeritakse ekraani muutumise korral, millel aken kuvatakse.
- Kasutajale antud võimalus määrata hiireratta liikumise täpsed parameetrid sündmuse parameetrites "preciseX" ja "preciseY".
- Funktsioon SDL_WaitEvent() on ümber töötatud, et vähendada CPU koormust.
- API hidapi on viidud avalike kategooriate alla ja on nüüd saadaval pealkirjafaili SDL_hidapi.h kaudu.
- Windows platvormil on täiustatud hiire liikumise määramist Windows Remote Desktopis. Lisatud märk SDL_HINT_IME_SHOW_UI kohalike liidese komponentide kuvamiseks (vaikimisi on need peidetud). UWP-rakenduste puhul on XInput asemel rakendatud WGI, et parandada sisendkontrollerite tuge.
- Linuxi platvormil on rakendatud märgid: SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME tegevuste seostamiseks, mis kuvatakse ekraanilukustuse väljalülitamisel; SDL_HINT_LINUX_JOYSTICK_CLASSIC, et valida, millist seadet (/dev/input/js* või /dev/input/event*) kasutada, ning SDL_HINT_JOYSTICK_DEVICE, et määrata seade, mis avatakse mängupuldi jaoks. Lisatud funktsioon SDL_LinuxSetThreadPriorityAndPolicy() lõngade prioriteetide haldamiseks.
- Androidi platvormil on rakendatud heli väljundit ja salvestamist AAudio API abil. Vaikimisi on Steam Controlleri tugi keelatud (selle lubamiseks on ette nähtud märk SDL_HINT_JOYSTICK_HIDAPI_STEAM).
Täiendav teave: Üks SDL autoritest Ryan Gordon (icculus) on teatatud, et plaanib lisada SDL-i lihtsa 3D API, mis toetab kaasaegsete GPU-de (Vulkan, Direct3D 12, Metal) võimalusi. Selle arenduse finantseerib Epic Games, Epic Megagrant programmi raames. Grant'i taotluse esitas Gordon mai 2021 ning kaks nädalat tagasi sai ta positiivse vastuse.
Allikas: opennet.ru
