SDL 2.0.22 Media Library kiadás

Megjelent az SDL 2.0.22 (Simple DirectMedia Layer) könyvtár, amelynek célja a játékok és multimédiás alkalmazások írásának egyszerűsítése. Az SDL könyvtár olyan lehetőségeket biztosít, mint a hardveresen gyorsított 2D és 3D grafikus kimenet, bemeneti feldolgozás, hanglejátszás, 3D kimenet az OpenGL/OpenGL ES/Vulkan segítségével, és sok más kapcsolódó művelet. A könyvtár C nyelven íródott, és a Zlib licenc alatt terjeszthető. Az SDL képességek különböző programozási nyelveken történő projektekben való használatához a szükséges összerendelések rendelkezésre állnak.

Az új kiadásban:

  • Továbbfejlesztett támogatás a Wayland protokollhoz. Kezdetben azt tervezték, hogy a Wayland protokollt egyidejűleg támogató környezetekben alapértelmezés szerint áttérnek a Wayland protokollra, de a játékokban és az NVIDIA illesztőprogramokban a Waylanddal kapcsolatos problémák miatt úgy döntöttek, hogy elhalasztják az átállást (a Wayland környezetekben az XWayland komponens, amely az X11 protokoll használatából származik). A Wayland használatához beállíthatja az „SDL_VIDEODRIVER=wayland” környezeti változót az alkalmazás elindítása előtt, vagy hozzáadhatja az „SDL_SetHint(SDL_HINT_VIDEODRIVER, „wayland,x11”)” függvényt a kódhoz az SDL_Init() meghívása előtt. A Wayland-del való fordításhoz legalább a libwayland-client 11-s verziója szükséges.
  • Az SDL_RenderGetWindow() függvény hozzáadva az SDL renderelőhöz társított ablakhoz.
  • A téglalap alakú területek kezeléséhez (pontok előfordulásának meghatározása, törlése, összehasonlítása, összevonása stb.), lebegőpontos számokon alapuló koordinátákkal és méretekkel történő műveletekhez hozzáadtunk egy függvénykészletet: SDL_PointInFRect(), SDL_FRectEmpty(), SDL_FRectEquals(), SDL_FRectEqualsEpsilonE () , SDL_HasIntersectionF(), SDL_IntersectFRect(), SDL_UnionFRect(), SDL_EncloseFPoints() és SDL_IntersectFRectAndLine().
  • SDL_IsTextInputShown() függvény hozzáadva annak ellenőrzésére, hogy a szövegbeviteli terület látható-e.
  • Az SDL_ClearComposition() függvény hozzáadva a szövegbeviteli terület törléséhez a beviteli mód (IME) letiltása nélkül.
  • SDL_TEXTEDITING_EXT esemény hozzáadva a hosszú szövegbeviteli területek kezeléséhez, és az SDL_HINT_IME_SUPPORT_EXTENDED_TEXT jelző az esemény engedélyezéséhez.
  • Hozzáadtuk az SDL_HINT_MOUSE_RELATIVE_MODE_CENTER jelzőt, amely lehetővé teszi, hogy az egér csak az ablak közepére korlátozódjon a teljes ablak helyett, ha a relatív mód engedélyezett.
  • Automatikus egérrögzítés engedélyezése az egérgombok megnyomásakor. A letiltásához javasolt az SDL_HINT_MOUSE_AUTO_CAPTURE jelző.
  • SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL és SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN jelzők hozzáadva az OpenGL vagy a Vulkan külső ablakban történő használatára vonatkozó információk továbbítására.
  • Az SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE jelző hozzáadása lehetővé teszi az SDL_QUIT esemény kézbesítését az utolsó alkalmazásablak bezárásakor.
  • Hozzáadtuk az SDL_HINT_JOYSTICK_ROG_CHAKRAM jelzőt, hogy a ROG Chakram egeret joystickként kezeljük.
  • Linux esetén az SDL_HINT_X11_WINDOW_TYPE attribútumot hozzáadtuk a _NET_WM_WINDOW_TYPE paraméter Windowshoz való beállításához.
  • Linux esetén az SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR jelző hozzáadásra került a libdecor használatához az xdg-decoration-t támogató kompozit szerverekkel.
  • Android esetén az SDL_AndroidSendMessage() függvényt úgy valósították meg, hogy tetszőleges parancsot küldjön az SDL Java kezelőnek.

Forrás: opennet.ru

Hozzászólás