SDL 2.0.18 ಮೀಡಿಯಾ ಲೈಬ್ರರಿ ಬಿಡುಗಡೆ

SDL 2.0.18 (ಸಿಂಪಲ್ ಡೈರೆಕ್ಟ್ ಮೀಡಿಯಾ ಲೇಯರ್) ಲೈಬ್ರರಿಯನ್ನು ಬಿಡುಗಡೆ ಮಾಡಲಾಯಿತು, ಇದು ಆಟಗಳು ಮತ್ತು ಮಲ್ಟಿಮೀಡಿಯಾ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಬರವಣಿಗೆಯನ್ನು ಸರಳಗೊಳಿಸುವ ಗುರಿಯನ್ನು ಹೊಂದಿದೆ. SDL ಲೈಬ್ರರಿಯು ಹಾರ್ಡ್‌ವೇರ್-ವೇಗವರ್ಧಿತ 2D ಮತ್ತು 3D ಗ್ರಾಫಿಕ್ಸ್ ಔಟ್‌ಪುಟ್, ಇನ್‌ಪುಟ್ ಪ್ರಕ್ರಿಯೆ, ಆಡಿಯೊ ಪ್ಲೇಬ್ಯಾಕ್, OpenGL/OpenGL ES/Vulkan ಮೂಲಕ 3D ಔಟ್‌ಪುಟ್ ಮತ್ತು ಇತರ ಅನೇಕ ಸಂಬಂಧಿತ ಕಾರ್ಯಾಚರಣೆಗಳಂತಹ ಸಾಧನಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಲೈಬ್ರರಿಯನ್ನು C ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು zlib ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗಿದೆ. ವಿವಿಧ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳಲ್ಲಿ ಯೋಜನೆಗಳಲ್ಲಿ SDL ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಬಳಸಲು ಬೈಂಡಿಂಗ್‌ಗಳನ್ನು ಒದಗಿಸಲಾಗಿದೆ. ಲೈಬ್ರರಿ ಕೋಡ್ ಅನ್ನು Zlib ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗಿದೆ.

ಹೊಸ ಬಿಡುಗಡೆಯಲ್ಲಿ:

  • Для каждой функции предоставлена информация о версии SDL, в которой данная функция появилась. Обеспечена автоматическая синхронизация документации в wiki с заголовочными файлами.
  • Добавлены новые функции:
    • SDL_RenderGeometry() и SDL_RenderGeometryRaw() для отрисовки произвольных фигур при помощи 2D Render API.
    • SDL_SetTextureUserData() и SDL_GetTextureUserData() для привязки данных приложения к текстуре.
    • SDL_RenderWindowToLogical() и SDL_RenderLogicalToWindow() для преобразования между координатами окна и логическими координатами отрисовки.
    • SDL_RenderSetVSync() для включения синхронизации вывода с кадровым гасящим импульсом (vblank).
    • SDL_PremultiplyAlpha() для применения прозрачности к блокам пикселей в формате SDL_PIXELFORMAT_ARGB8888.
    • SDL_SetWindowMouseRect() и SDL_GetWindowMouseRect() для ограничения движения курсора мыши заданной областью окна.
    • SDL_GameControllerHasRumble(), SDL_GameControllerHasRumbleTriggers(), SDL_JoystickHasRumble() и SDL_JoystickHasRumbleTriggers() для проверки поддержки игровым контроллером и джойстиком эффекта адаптивной вибрации (rumble)
    • SDL_GetWindowICCProfile() для получения цветового ICC-профиля окна (для проверки изменения профиля предложено событие SDL_WINDOWEVENT_ICCPROF_CHANGED).
  • Добавлены новые признаки: SDL_HINT_APP_NAME для передачи сведений о названии приложения и SDL_HINT_VIDEO_EGL_ALLOW_TRANSPARENCY для включения прозрачности для окон EGL.
  • Добавлено новое событие окна SDL_WINDOWEVENT_DISPLAY_CHANGED, которое генерируется при изменении экрана, на котором показывается окно.
  • Предоставлена возможность определения точных параметров движения колеса мыши при помощи полей «preciseX» и «preciseY» в параметрах события.
  • Функция SDL_WaitEvent() переработана для снижения нагрузки на CPU.
  • API hidapi переведён в категорию публичных и теперь доступен через заголовочный файл SDL_hidapi.h.
  • На платформе Windows улучшено определение относительного движения мыши в Windows Remote Desktop. Добавлен признак SDL_HINT_IME_SHOW_UI для показа родных компонентов интерфейса (по умолчанию скрываются). Для UWP-приложений вместо XInput задействован WGI для улучшения поддержки контроллеров ввода.
  • Для платформы Linux реализованы признаки: SDL_HINT_SCREENSAVER_INHIBIT_ACTIVITY_NAME для привязки действий, отображаемых при отключении хранителя экрана; SDL_HINT_LINUX_JOYSTICK_CLASSIC для выбора какое из устройств (/dev/input/js* или /dev/input/event*) использовать для джойстика; SDL_HINT_JOYSTICK_DEVICE для установки устройства, открываемого для джойстика. Добавлена функция SDL_LinuxSetThreadPriorityAndPolicy() для управления расстановки приоритетов для потоков.
  • Для платформы Android реализована поддержка вывода и захвата звука при помощи API AAudio. По умолчанию отключена поддержка контроллера Steam Controller (для включения предложен признак SDL_HINT_JOYSTICK_HIDAPI_STEAM).

Дополнение: Один из авторов SDL Райан Гордон (icculus) сообщил, что планирует добавить в SDL простой 3D API, поддерживающий возможности API современных GPU (Vulkan, Direct3D 12, Metal). Финансировать эту разработку будет компания Epic Games, в рамках программы Epic Megagrant. Заявку на грант Гордон подал в мае 2021, а две недели назад получил положительный ответ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ