Umtapo wezincwadi we-SDL 2.0.22 (Simple DirectMedia Layer) ukhululiwe, okuhloswe ngawo ukwenza lula ukubhalwa kwemidlalo nezinhlelo zokusebenza zemultimedia. Umtapo wolwazi we-SDL uhlinzeka ngamathuluzi afana nokuphuma kwezithombe ezisheshiswe ngehadiwe i-2D ne-3D, ukucubungula okokufaka, ukudlalwa komsindo, ukuphuma kwe-3D nge-OpenGL/OpenGL ES/Vulkan neminye imisebenzi eminingi ehlobene. Umtapo wolwazi ubhalwe ngo-C futhi usatshalaliswa ngaphansi kwelayisensi ye-Zlib. Ukusebenzisa amakhono e-SDL kumaphrojekthi ngezilimi ezihlukahlukene zokuhlela, izibopho ezidingekayo zinikeziwe.
Ekukhishweni okusha:
- Ukusekelwa okuthuthukisiwe kwephrothokholi ye-Wayland. Ekuqaleni, kwakuhlelwe ukuthi kushintshelwe ekusebenziseni umthetho olandelwayo we-Wayland ngokuzenzakalelayo ezindaweni ezinikeza ukusekelwa ngasikhathi sinye i-Wayland ne-X11, kodwa ngenxa yezinkinga ezihambisana ne-Wayland emidlalweni nabashayeli be-NVIDIA, kunqunywe ukuthi kuhlehliswe uguquko (ezindaweni zase-Wayland ezine ingxenye ye-XWayland, ephuma ekusebenziseni iphrothokholi ye-X11). Ukusebenzisa i-Wayland, ungasetha okuguquguqukayo kwemvelo βSDL_VIDEODRIVER=waylandβ ngaphambi kokuqala uhlelo noma wengeze umsebenzi βSDL_SetHint(SDL_HINT_VIDEODRIVER, βwayland,x11β)β kukhodi ngaphambi kokufonela i-SDL_Init(). Ukuhlanganisa ne-Wayland kudinga okungenani inguqulo ye-libwayland-client engu-1.18.0.
- Kwengezwe umsebenzi we-SDL_RenderGetWindow() ukuze uthole iwindi elihlotshaniswa ne-SDL Renderer.
- Kwengezwe isethi yemisebenzi yokukhohlisa izindawo eziwunxande (ukunquma ukwenzeka kwamaphoyinti, ukucacisa, ukuqhathanisa, ukuhlanganisa, njll.), esebenza ngokudidiyela nosayizi ngokusekelwe ezinombolweni zamaphuzu antantayo: SDL_PointInFRect(), SDL_FRectEmpty(), SDL_FRectEquals(), SDL_FRectEquals () , SDL_HasIntersectionF(), SDL_IntersectFRect(), SDL_UnionFRect(), SDL_EncloseFPoints() kanye ne-SDL_IntersectFRectAndLine().
- Kwengezwe umsebenzi we-SDL_IsTextInputShown() ukuhlola ukuthi ingabe indawo yokufaka umbhalo iyaboniswa.
- Kwengezwe umsebenzi we-SDL_ClearComposition() ukuze usule indawo yokufaka umbhalo ngaphandle kokukhubaza indlela yokufaka (IME).
- Kwengezwe umcimbi we-SDL_TEXTEDITING_EXT ukuze isingathe izindawo zokufaka umbhalo omude kanye nefulegi le-SDL_HINT_IME_SUPPORT_EXTENDED_TEXT ukuze lo mcimbi unike amandla.
- Kwengezwe ifulegi le-SDL_HINT_MOUSE_RELATIVE_MODE_CENTER ukuze uvumele igundane libe phakathi nendawo yewindi kuphela esikhundleni salo lonke iwindi lapho imodi yesihlobo inikwe amandla.
- Kunikwe amandla ukuthwebula kwegundane okuzenzakalelayo lapho ucindezela izinkinobho zegundane. Ukuze uyikhubaze, ifulegi le-SDL_HINT_MOUSE_AUTO_CAPTURE liyaphakanyiswa.
- Kwengezwe amafulegi e-SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL kanye ne-SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN ukuze kudluliselwe ulwazi mayelana nokusetshenziswa kwe-OpenGL noma i-Vulkan efasiteleni elingaphandle.
- Kwengezwe ifulegi le-SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE ukuze unike amandla ukulethwa komcimbi we-SDL_QUIT uma iwindi lokugcina lohlelo lokusebenza livaliwe.
- Kwengezwe ifulegi le-SDL_HINT_JOYSTICK_ROG_CHAKRAM ukuphatha igundane le-ROG Chakram njengenduku yokudlala.
- Ku-Linux, SDL_HINT_X11_WINDOW_TYPE isibaluli sengeziwe ukuze kusethwe ipharamitha ye-_NET_WM_WINDOW_TYPE kumawindi.
- Ku-Linux, ifulegi le-SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR lengeziwe ukuze kusetshenziswe i-libdecor enamaseva ayinhlanganisela asekela ukuhlobisa kwe-xdg.
- Ku-Android, umsebenzi we-SDL_AndroidSendMessage() usetshenziswe ukuze kuthunyelwe umyalo ongaqondile kusiphathi se-SDL Java.
Source: opennet.ru