SDL 2.0.22 Media Library Release

Oyunların və multimedia proqramlarının yazılmasını sadələşdirməyə yönəlmiş SDL 2.0.22 (Simple DirectMedia Layer) kitabxanası buraxıldı. SDL kitabxanası aparat tərəfindən sürətləndirilmiş 2D və 3D qrafika çıxışı, daxiletmənin işlənməsi, audionun oxudulması, OpenGL/OpenGL ES/Vulkan vasitəsilə 3D çıxışı və bir çox digər əlaqəli əməliyyatlar kimi alətlər təqdim edir. Kitabxana C dilində yazılmışdır və Zlib lisenziyası ilə paylanmışdır. Müxtəlif proqramlaşdırma dillərində layihələrdə SDL-nin imkanlarından istifadə etmək üçün lazımi bağlamalar təmin edilir.

Yeni buraxılışda:

  • Wayland protokolu üçün təkmilləşdirilmiş dəstək. Əvvəlcə Wayland və X11 üçün eyni vaxtda dəstək verən mühitlərdə standart olaraq Wayland protokolundan istifadəyə keçmək planlaşdırılırdı, lakin oyunlarda və NVIDIA sürücülərində Wayland ilə əlaqəli problemlərə görə keçidin təxirə salınması qərara alındı ​​(Wayland mühitlərində XWayland komponenti, X11 protokolundan istifadə nəticəsində). Wayland-dan istifadə etmək üçün siz proqrama başlamazdan əvvəl “SDL_VIDEODRIVER=wayland” mühit dəyişənini təyin edə və ya SDL_Init() çağırmadan əvvəl koda ‘SDL_SetHint(SDL_HINT_VIDEODRIVER, “wayland,x11”)” funksiyasını əlavə edə bilərsiniz. Wayland ilə tərtib etmək üçün ən azı libwayland-client versiyası 1.18.0 tələb olunur.
  • SDL Renderer ilə əlaqəli pəncərəni əldə etmək üçün SDL_RenderGetWindow() funksiyası əlavə edildi.
  • Düzbucaqlı sahələri manipulyasiya etmək (nöqtələrin meydana gəlməsini təyin etmək, təmizləmək, müqayisə etmək, birləşmək və s.), üzən nöqtə nömrələrinə əsaslanan koordinatlar və ölçülərlə işləmək üçün bir sıra funksiyalar əlavə edildi: SDL_PointInFRect(), SDL_FRectEmpty(), SDL_FRectEquals(), SDL_FRect () , SDL_HasIntersectionF(), SDL_IntersectFRect(), SDL_UnionFRect(), SDL_EncloseFPoints() və SDL_IntersectFRectAndLine().
  • Mətn daxiletmə sahəsinin göstərilib-göstərilmədiyini yoxlamaq üçün SDL_IsTextInputShown() funksiyası əlavə edilib.
  • Daxiletmə metodunu (IME) söndürmədən mətn daxiletmə sahəsini təmizləmək üçün SDL_ClearComposition() funksiyası əlavə edildi.
  • Uzun mətn daxiletmə sahələrini idarə etmək üçün SDL_TEXTEDITING_EXT hadisəsi və bu hadisəni aktivləşdirmək üçün SDL_HINT_IME_SUPPORT_EXTENDED_TEXT bayrağı əlavə edildi.
  • Nisbi rejim aktiv olduqda siçanın bütün pəncərə əvəzinə yalnız pəncərənin mərkəzi ilə məhdudlaşdırılmasını təmin etmək üçün SDL_HINT_MOUSE_RELATIVE_MODE_CENTER bayrağı əlavə edildi.
  • Siçan düymələrini basarkən avtomatik siçan tutmağı aktivləşdirdi. Onu söndürmək üçün SDL_HINT_MOUSE_AUTO_CAPTURE bayrağı təklif olunur.
  • Xarici pəncərədə OpenGL və ya Vulkan istifadəsi haqqında məlumat ötürmək üçün SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL və SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN bayraqları əlavə edildi.
  • Son proqram pəncərəsi bağlandıqda SDL_QUIT hadisəsinin çatdırılmasını təmin etmək üçün SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE bayrağı əlavə edildi.
  • ROG Chakram siçanını joystik kimi qəbul etmək üçün SDL_HINT_JOYSTICK_ROG_CHAKRAM bayrağı əlavə edildi.
  • Linux üçün _NET_WM_WINDOW_TYPE parametrini pəncərələrə təyin etmək üçün SDL_HINT_X11_WINDOW_TYPE atributu əlavə edilmişdir.
  • Linux üçün libdecor-dan xdg dekorasiyasını dəstəkləyən kompozit serverlərlə istifadə etmək üçün SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR bayrağı əlavə edilmişdir.
  • Android üçün SDL_AndroidSendMessage() funksiyası SDL Java işləyicisinə ixtiyari əmr göndərmək üçün həyata keçirilib.

Mənbə: opennet.ru

Добавить комментарий