Китобхонаи SDL 2.0.22 (Simple DirectMedia Layer) бароварда шуд, ки ба содда кардани навиштани бозиҳо ва замимаҳои мултимедиявӣ нигаронида шудааст. Китобхонаи SDL имконотро ба монанди баромади графикаи 2D ва 3D бо сахтафзор тезонидашуда, коркарди вуруд, бозикунии аудио, баромади 3D тавассути OpenGL/OpenGL ES/Vulkan ва бисёр дигар амалиётҳои марбут ба он фароҳам меорад. Китобхона дар C навишта шудааст ва таҳти иҷозатномаи Zlib паҳн карда мешавад. Барои истифодаи имкониятҳои SDL дар лоиҳаҳо бо забонҳои гуногуни барномасозӣ, пайвандҳои зарурӣ таъмин карда мешаванд.
Дар нашри нав:
- Дастгирии беҳтаршудаи протоколи Wayland. Мо дар аввал нақша доштем, ки ба истифодаи Wayland ба таври пешфарз дар муҳитҳое, ки ҳам Wayland ва ҳам X11-ро дастгирӣ мекунанд, гузарем, аммо аз сабаби мушкилоти марбут ба Wayland дар бозиҳо ва драйверҳои NVIDIA, мо тасмим гирифтем, ки гузаришро ба таъхир андозем. (Муҳитҳои Wayland бо компоненти XWayland истифодаи баромади X11-ро идома медиҳанд.) Барои истифодаи Wayland, шумо метавонед пеш аз оғози барнома тағирёбандаи муҳити зистро "SDL_VIDEODRIVER=wayland" муқаррар кунед ё пеш аз даъват кардани SDL_Init() функсияи 'SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11")'-ро ба код илова кунед. Компиляция бо Wayland ҳадди аққал версияи libwayland-client 1.18.0-ро талаб мекунад.
- Функсияи SDL_RenderGetWindow() илова карда шуд, то тирезаи алоқаманд бо SDL Renderer ба даст оварда шавад.
- Маҷмӯи функсияҳо барои коркарди минтақаҳои росткунҷа (муайян кардани пайдоиши нуқтаҳо, тоза кардан, муқоиса кардан, муттаҳид кардан ва ғайра) бо истифода аз координатаҳо ва андозаҳои нуқтаи шинокунанда илова карда шуд: SDL_PointInFRect(), SDL_FRectEmpty(), SDL_FRectEquals(), SDL_FRectEqualsEpsilon(), SDL_HasIntersectionF(), SDL_IntersectFRect(), SDL_UnionFRect(), SDL_EncloseFPoints() ва SDL_IntersectFRectAndLine().
- Функсияи SDL_IsTextInputShown() илова карда шуд, то тафтиш карда шавад, ки оё майдони вуруди матн нишон дода шудааст ё не.
- Функсияи SDL_ClearComposition() илова карда шуд, то майдони вуруди матнро бе хомӯш кардани усули вуруд (IME) тоза кунад.
- Барои идора кардани минтақаҳои дарози вуруди матн, рӯйдоди SDL_TEXTEDITING_EXT ва парчами SDL_HINT_IME_SUPPORT_EXTENDED_TEXT барои фаъол кардани ин рӯйдод илова карда шуд.
- Парчами SDL_HINT_MOUSE_RELATIVE_MODE_CENTER илова карда шуд, то имкон диҳад, ки муш танҳо ба маркази тиреза маҳдуд карда шавад, на ба тамоми тиреза, вақте ки ҳолати нисбӣ фаъол аст.
- Гирифтани худкори муш ҳангоми пахш кардани тугмаҳои муш фаъол аст. Барои ғайрифаъол кардан парчами SDL_HINT_MOUSE_AUTO_CAPTURE пешниҳод шудааст.
- Барои интиқоли маълумот дар бораи он, ки оё тирезаи беруна аз OpenGL ё Vulkan истифода мебарад, парчамҳои SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL ва SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN илова карда шуданд.
- Барои фаъол кардани расонидани рӯйдоди SDL_QUIT ҳангоми баста шудани охирин тирезаи барнома, парчами SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE илова карда шуд.
- Парчами SDL_HINT_JOYSTICK_ROG_CHAKRAM барои идора кардани муши ROG Chakram ҳамчун ҷойстик илова карда шуд.
- барои Linux Барои муқаррар кардани параметри _NET_WM_WINDOW_TYPE барои Windows, парчами SDL_HINT_X11_WINDOW_TYPE илова карда шуд.
- барои Linux Барои истифодаи libdecor бо композит парчами SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR илова карда шуд серверҳо, ороиши xdg-ро дастгирӣ мекунад.
- барои Android Функсияи SDL_ амалӣ карда шудAndroidSendMessage()-ро барои фиристодани фармони худсарона ба коркардкунандаи Java SDL истифода баред.
Манбаъ: opennet.ru
