Выпуск мультимедийной библиотеки SDL 2.0.14


Представлен релиз библиотеки SDL 2.0.14 (Simple DirectMedia Layer), нацеленной на упрощение написания игр и мультимедийных приложений. Библиотека SDL предоставляет такие средства как аппаратно-ускоренный вывод 2D- и 3D-графики, обработка ввода, воспроизведение звука, вывод 3D через OpenGL/OpenGL ES/Vulkan и множество иных сопутствующих операций. Библиотека написана на языке Си и распространяется под лицензией zlib. Для использования возможностей SDL в проектах на различных языках программирования предоставляются биндинги.

В новом выпуске:

  • В видеодрайвере KMSDRM, применяемом в Linux, реализована поддержка графического API Vulkan.
  • В драйвер HIDAPI добавлена поддержка игровых контроллеров PS5 DualSense и Xbox Series X.
  • Добавлены константы для новых кнопок и колёс игровых контроллеров.
  • Предложены новые функции для получение информации от игровых контроллеров:
    • SDL\_GameControllerGetSerial()
    • SDL\_GameControllerHasAxis()
    • SDL\_GameControllerHasButton()
    • SDL\_GameControllerGetNumTouchpads()
    • SDL\_GameControllerGetNumTouchpadFingers()
    • SDL\_GameControllerGetTouchpadFinger()
    • SDL\_GameControllerHasSensor()
    • SDL\_GameControllerSetSensorEnabled()
    • SDL\_GameControllerIsSensorEnabled()
    • SDL\_GameControllerGetSensorData()
    • SDL\_GameControllerRumbleTriggers()
    • SDL\_GameControllerHasLED()
    • SDL\_GameControllerSetLED()
  • Предложены новые функции для получение информации от джойстиков:
    • SDL\_JoystickGetSerial()
    • SDL\_JoystickRumbleTriggers()
    • SDL\_JoystickHasLED()
    • SDL\_JoystickSetLED()
  • Добавлен API для создания виртуальных джойстиков:
    • SDL\_JoystickAttachVirtual()
    • SDL\_JoystickDetachVirtual()
    • SDL\_JoystickIsVirtual()
    • SDL\_JoystickSetVirtualAxis()
    • SDL\_JoystickSetVirtualButton()
    • SDL\_JoystickSetVirtualHat()
  • Добавлены функции SDL\_LockSensors() и SDL\_UnlockSensors() для обеспечения эксклюзивного доступа к датчикам.
  • Добавлена функция SDL\_GetPreferredLocales() для получения настроек текущей локали.
  • Добавлена функция SDL\_OpenURL() для открытия URL в web-браузере, выбранном в системе по умолчанию.
  • Добавлена функция SDL\_SIMDRealloc() для возвращения памяти, полученной через SDL\_SIMDAlloc().
  • Добавлена функция SDL\_GetErrorMsg() для получения списка ошибок.
  • Добавлены функции SDL\_crc32(), SDL\_wcscasecmp(), SDL\_wcsncasecmp(), SDL\_trunc(), SDL\_truncf().
  • Добавлены признаки:
    • SDL\_HINT\_MOUSE\_RELATIVE\_SCALING (масштабирование движения указателя относительно DPI или логического размера отрисовываемой области),
    • SDL\_HINT\_JOYSTICK\_HIDAPI\_PS5 (включение применения драйвера HIDAPI для контроллеров PS5),
    • SDL\_HINT\_PREFERRED\_LOCALE (переопределение локали).
    • Значение SDL\_HINT\_VIDEO\_MINIMIZE\_ON\_FOCUS\_LOSS изменено на false для улучшения совместимости с современными оконными менеджерами.
  • Для Linux реализованы признаки:
    • SDL\_HINT\_AUDIO\_DEVICE\_APP\_NAME (выбор имени для показа названия приложения в PulseAudio),
    • SDL\_HINT\_AUDIO\_DEVICE\_STREAM\_NAME (выбор имени для показа названия потока в PulseAudio),
    • SDL\_HINT\_LINUX\_JOYSTICK\_DEADZONES (определение мёртвых зон для джойстика),
    • SDL\_HINT\_THREAD\_PRIORITY\_POLICY (настройка планировщика потоков),
    • SDL\_HINT\_THREAD\_FORCE\_REALTIME\_TIME\_CRITICAL (включение для потоков режима реального времени).
  • Для Windows реализован драйвер RAWINPUT для одновременно работы с более чем 4 контроллерами Xbox. Для активации данного драйвера предложен признак SDL\_HINT\_JOYSTICK\_RAWINPUT.
  • Для Android добавлена функция SDL\_AndroidRequestPermission() для запроса определённых системных полномочий.
  • Добавлена поддержка операционной системы OS/2.

Источник: https://www.opennet.ru/opennews/art.shtml?num=54303


Comments 0