Релиз на мултимедийната библиотека SDL 3

Представен е релизът на библиотеката SDL 3.2.0 (Simple DirectMedia Layer), който е обявен за първия официален стабилен вариант на клон SDL 3. Библиотеката е насочена към опростяване на разработването на игри и мултимедийни приложения и предлага функции като хардуерно ускорено извеждане на 2D и 3D графика, обработка на входни данни, възпроизвеждане на звук и извеждане на 3D чрез OpenGL, OpenGL ES, Metal, Direct3D или Vulkan. Кодът е написан на C и се разпространява под лиценз Zlib. Предоставят се обвивки за използване на SDL в проекти, написани на различни езици за програмиране.

Основни нововъведения:

  • Съществено подобрена е поддръжката на протокола Wayland, който сега е активиран по подразбиране в среди, предоставящи едновременна поддръжка на Wayland и X11 и които поддържат разширенията на протокола fifo-v1 и commit-timing-v1.
  • По подразбиране е активиран мултимедийният сървър PipeWire, който е обявен за по-приоритетен от PulseAudio.
  • Добавена е поддръжка за видеозапис от уеб камери (при наличие на PipeWire).
  • Добавена е възможността за използване на графични таблети и цифрови пера.
  • Съществено подобрена е поддръжката на екрани с висока плътност на пикселите (High DPI).
  • Добавена е поддръжка на цветови пространства и възможност за управление на няколко цветови пространства. Реализирана е начален поддръжка за HDR.
  • Напълно преработен е кодът за работа със звук. Добавена е поддръжка за логически звукови устройства (различни части от програмата могат да работят с отделно звуково устройство). Добавени са средства за работа с звукови потоци, преобразуване на потоци, промяна на честотата на дискретизация, микширане, управление на буферирането, промяна на тоналността и силата на звука. Реализирана е автоматична обработка на свързването или отстраняването на звукови устройства, както и смяна на звуковото устройство по подразбиране.
  • В API за 2D рисуване е добавен бекенд за рисуване чрез API Vulkan. Добавени са функции за работа с повърхности през API Vulkan.
  • Извършено е голямо почистване на остарели възможности, загубили актуалност в съвременните условия. Например, прекратена е поддръжката на OpenGL ES 1.0 и DirectFB, изтрит е кодът за работа на остарели платформи като QNX, Pandora, WinRT и OS/2.
  • Възможност за организиране на работата на програмата с използване на callback-извиквания и определяне на цикъл за обработка на събития в функцията main().
  • В API са направени промени, които нарушават съвместимостта. Уеднаквени са правилата за именуване на API — извикванията в различни подсистеми сега се именуват с използване на една обща схема.
  • Добавени са нови API:
    • GPU API — кросплатформен достъп до GPU и възможности за 3D рендериране.
    • Dialog API — използване на диалози за избор/отваряне/съхраняване на файлове и директории.
    • Filesystem API — операции с файловата система, управление на директории и търсене на файлове.
    • Storage API — абстрактен програмен интерфейс за достъп до различни системи за съхранение на данни.
    • Camera API — достъп до уеб камери.
    • Pen API — работа с графични таблети и цифрови химикалки, като Wacom и Apple Pencil.

    • Източник: opennet.ru
Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster