SDL 2.0.22 Media Library Release

A fost lansată biblioteca SDL 2.0.22 (Simple DirectMedia Layer), menită să simplifice scrierea de jocuri și aplicații multimedia. Biblioteca SDL oferă facilități precum ieșire grafică 2D și 3D accelerată de hardware, procesare de intrare, redare audio, ieșire 3D prin OpenGL/OpenGL ES/Vulkan și multe alte operațiuni conexe. Biblioteca este scrisă în limbaj C și distribuită sub licența Zlib. Pentru a utiliza capabilitățile SDL în proiecte în diferite limbaje de programare, sunt furnizate legăturile necesare.

În noua versiune:

  • Улучшена поддержка протокола Wayland. Изначально планировалось перейти к использованию протокола Wayland по умолчанию в окружениях, предоставляющих одновременную поддержку Wayland и X11, но из-за связанных с Wayland проблем играх и драйверах NVIDIA, решено повременить с переходом (в Wayland-окружениях с компонентом XWayland как и раньше применяется вывод с использованием протокола X11). Для использования Wayland можно выставить перед запуском приложения переменную окружения «SDL_VIDEODRIVER=wayland» или добавить в код функцию ‘SDL_SetHint(SDL_HINT_VIDEODRIVER, «wayland,x11»)’ перед вызовом SDL_Init(). Для компиляции с Wayland требуется как минимум версия libwayland-client 1.18.0.
  • Добавлена функция SDL_RenderGetWindow() для получения окна, ассоциированного с SDL Renderer.
  • Добавлен набор функций для манипуляции прямоугольными областями (определение вхождение точек, очистка, сравнение, объединение и т.п.), оперируя координатами и размерами на базе чисел c плавающей запятой: 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.
  • Добавлены признаки SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL и SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN для передачи информации об использовании во внешнем окне OpenGL или Vulkan.
  • Добавлен признак SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE для включения доставки события SDL_QUIT при закрытии последнего окна приложения.
  • Добавлен признак SDL_HINT_JOYSTICK_ROG_CHAKRAM для обработки мыши ROG Chakram как джойстика.
  • Для Linux добавлен признак SDL_HINT_X11_WINDOW_TYPE для выставления окнам параметра _NET_WM_WINDOW_TYPE.
  • Для Linux добавлен признак SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR для использования libdecor с композитными серверами, поддерживающими xdg-decoration.
  • Для Android реализована функция SDL_AndroidSendMessage() для отправки произвольной команды в Java-обработчик SDL.

Sursa: opennet.ru

Adauga un comentariu