Nach sieben Monaten Entwicklung wurde die Version 2.30.0 der SDL-Bibliothek (Simple DirectMedia Layer) veröffentlicht, die darauf abzielt, die Erstellung von Spielen und Multimedia-Anwendungen zu vereinfachen. Die SDL-Bibliothek bietet Funktionen wie hardwarebeschleunigte Ausgabe von 2D- und 3D-Grafik, Eingabeverarbeitung, Audio-Wiedergabe, 3D-Ausgabe über OpenGL/OpenGL ES/Vulkan und viele andere damit verbundene Operationen. Die Bibliothek ist in C geschrieben und unter der Zlib-Lizenz veröffentlicht. Um die SDL-Funktionalitäten in Projekten in verschiedenen Programmiersprachen zu nutzen, werden die erforderlichen Wrapper bereitgestellt.
In der Version 2.30.0 der SDL wurden hauptsächlich Bugfixes angeboten, da die Zweigstelle SDL 2.x im vergangenen Jahr in den Wartungsmodus überführt wurde, während die gesamte aktive Entwicklung zuletzt auf die Vorbereitung des Zweigs SDL 3 und der Kompatibilitätsschicht sdl2-compat konzentriert war, die die API von SDL 2.x über SDL 3 implementiert und es ermöglicht, Programme, die für SDL 2 geschrieben wurden, unter Nutzung der Möglichkeiten des Zweigs SDL 3 auszuführen.
Im Zweig SDL 3 wurden einige Subsysteme überarbeitet, inkompatible Änderungen an der API vorgenommen und eine große Bereinigung veralteter Funktionen durchgeführt, die in der heutigen Realität nicht mehr relevant sind. Beispielsweise wird in SDL 3 eine vollständige Überarbeitung des Codes für die Audioverarbeitung erwartet, die standardmäßig Wayland und PipeWire verwendet, die Unterstützung von OpenGL ES 1.0 und DirectFB eingestellt, sowie die Entfernung von Code für die Unterstützung alter Plattformen wie QNX, Pandora, WinRT und OS/2.
Unter den Änderungen in der Version SDL 2.30.0:
- Unterstützung für Oberflächenformate mit indizierten Paletten und 2 Bit Farbdarstellung pro Pixel hinzugefügt.
- Die Funktion SDL_GameControllerGetSteamHandle() wurde hinzugefügt, um den Deskriptor des Spiel-Controllers im Steam API zu ermitteln.
- Ein Ereignis SDL_CONTROLLERSTEAMHANDLEUPDATED wurde hinzugefügt, das generiert wird, wenn sich der Deskriptor des Spiel-Controllers im Steam API ändert.
- Die Umgebungsvariable SDL_LOGGING wurde hinzugefügt, um die Protokollausgabe zu steuern.
- Für die Plattform macOS wurden die Hinweise SDL_HINT_JOYSTICK_IOKIT, SDL_HINT_JOYSTICK_MFI und SDL_HINT_RENDER_METAL_PREFER_LOW_POWER_DEVICE implementiert.
- Für die Plattform Xbox wurde die Funktion SDL_GDKGetDefaultUser() hinzugefügt.
Quelle: opennet.ru
