SDL 2.0.22 Хэвлэл мэдээллийн сангийн хувилбар

SDL 2.0.22 (Энгийн DirectMedia Layer) номын сан гарсан бөгөөд энэ нь тоглоом, мультимедиа програмуудыг бичихэд хялбар болгох зорилготой юм. SDL номын сан нь техник хангамжийн хурдасгасан 2D болон 3D график гаралт, оролтын боловсруулалт, аудио тоглуулах, OpenGL/OpenGL ES/Vulkan-аар дамжуулан 3D гаралт болон бусад холбогдох үйлдлүүд зэрэг хэрэгслүүдээр хангадаг. Номын сан нь C хэл дээр бичигдсэн бөгөөд Zlib лицензийн дагуу түгээгддэг. Төрөл бүрийн програмчлалын хэл дээрх төслүүдэд SDL-ийн чадавхийг ашиглахын тулд шаардлагатай холбоосуудыг хангасан болно.

Шинэ хувилбарт:

  • Улучшена поддержка протокола 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.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх