Состоялся (https://discourse.libsdl.org/t/sdl-2-0-9-released/25228) релиз библиотеки SDL 2.0.9 (https://libsdl.org) (Simple Direct Layer), нацеленной на упрощение написания игр и мультимедийных приложений. Библиотека предоставляет такие средства как аппаратно ускоренный вывод 2D- и 3D-графики, обработка ввода, воспроизведение звука, вывод 3D через OpenGL/OpenGL ES и множество иных сопутствующих операций. Библиотека написана на языке Си и распространяется под лицензией zlib. Для использования возможностей SDL в проектах на различных языках программирования предоставляются биндинги.
В новом выпуске:- Добавлен API для работы с датчиками (SDL_sensor.h) и поддержка события SDL_SENSORUPDATE, отправляемого при обновлении данных от датчика;
- Добавлена функция SDL_GetDisplayOrientation() для получения сведений об ориентации экрана и событие SDL_DISPLAYEVENT для обработки смены ориентации;- Добавлены драйверы джойстиков на базе HIDAPI для поддержки игровых контроллеров Xbox, PS4 и Nintendo Switch Pro;
- Добавлена поддержка различных популярных игровых контроллеров;
- Добавлены функции SDL_JoystickGetDevicePlayerIndex(), SDL_JoystickGetPlayerIndex(), SDL_GameControllerGetPlayerIndex(), SDL_GameControllerRumble(), SDL_JoystickRumble() и SDL_GameControllerMappingForDeviceIndex();
- Добавлены опции SDL_HINT_MOUSE_DOUBLE_CLICK_TIME и SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS для управления временем и радиусом двойного клика мышью;
- Добавлены функции SDL_HasColorKey(), SDL_HasAVX512F() и SDL_IsTablet() для определения цвета прозрачности, поддержки инструкций AVX-512F и факта запуска приложения на планшете;- Для Linux добавлен вызов SDL_LinuxSetThreadPriority() для корректировки приоритета выполнения потока;
- Для Android добавлена поддержка контроллеров USB Xbox, PS4 и Nintendo Switch Pro, возможность использования относительного позиционирования указателя мыши и замены курсора мыши. Добавлены функции SDL_AndroidBackButton(), SDL_IsChromebook() и SDL_IsDeXMode() для настройки обработчика копки "Назад", проверки запуска в окружении Chromebook и определения применения адаптера Samsung DeX.URL: https://discourse.libsdl.org/t/sdl-2-0-9-released/25228
Новость: https://www.opennet.ru/opennews/art.shtml?num=49537
Забыли упомянуть улучшения в поддержке Wayland и работу Server Side декораций в Wayland сеансе KDE.
Теперь пользователю ещё один чемоданчик с библиотекой таскать с собой придётся.
Теперь? Она уже где нужна и так есть давно.
Где нужна работает только SDLv1.2, в SDLv2.x с портируемостью гораздо хуже дела обстоят
Что у вас за проблемы. Во всех нормальных ОС сто лет как софт может использовать любые либы, которые ему нужны.
>Где нужна работает только SDLv1.2, в SDLv2.x с портируемостью гораздо хуже дела обстоятНу не знаю ,не программировал.Но в документации при переходе с 1.2 на 2 версию отмечалось всего 3
сломанных функции ,и одна глобальная (переписан звук) .
На мегамозге описывали как переписали движок игры (космический симулятор )на 2.0.3 (вроде). Меньше 130 строчек кода кода авторам переписать пришлось, астрономическая поломка совместимости .....
В плане платформ ,да хуже с устаревшими платформами из-за больших требований к месту и ОЗУ , многие
модели просто официально не потдерживаються ,но неофициальные порты есть .
Реально больше отвалилось, я одну прогу с 1.2 на 2.0 вообще так с наскока не смог перетянуть.
> Где нужна работает только SDLv1.2, в SDLv2.x с портируемостью гораздо хуже дела обстоятА теперь попробуй в SDL1.2 с буфером обмена поработать... в SDL2 это наконец сделали кроссплатформенно. И это круто.
В 1.2 еще с перехватом комбинаций DE было прикольно. Alt-tab не работал в режиме borderless, Карл.
почти все опенсурсные игры/движки что я смотрел перешли на SDL2 и прекрасно работали в wayland из коробки, единственное исключение OpenTTD
Где брать файлы для работы с cmake?
pkgconfig? Не, не слышал.
У cmake есть свои специальные файлы *.cmake. Оптимальная когфигурация для каждого *.so из SDL2 -- разные set-ы и include-ы занимает несколько десятков строк. На Гитхабе выложены сотни вариантов разного качества. Поэтому и спрашиваю, есть ли официальный?
Кто-нибуть обясните мне, зачем нужны две сущности Joystick и GameController ?
Не всё то Joystick, что GameController.
Это как бы немного разные вещи. Joystick - подмножество GameController.
> Кто-нибуть обясните мне, зачем нужны две сущности Joystick и GameController ?Ну вот смотри, фигня для разбивания телевизора^W^W имитации игры в кегли - это, определенно, game controller. Ну а что это еще?! Но джойстиком оно не является вообще совсем.