Die Bibliothek SDL 3.2.0 (Simple DirectMedia Layer) wurde veröffentlicht, die als erste offizielle stabile Version des SDL 3-Zweigs gekennzeichnet ist. Die Bibliothek zielt darauf ab, das Schreiben von Spielen und Multimedia-Anwendungen zu vereinfachen und bietet Funktionen wie hardwarebeschleunigte Ausgabe von 2D- und 3D-Grafik, Eingabeverarbeitung, Audio-Wiedergabe und 3D-Ausgabe ĂŒber OpenGL, OpenGL ES, Metal, Direct3D oder Vulkan. Der Code ist in C geschrieben und wird unter der Zlib-Lizenz veröffentlicht. Es werden Wrapper fĂŒr die Verwendung von SDL in Projekten in verschiedenen Programmiersprachen bereitgestellt.
Hauptneuheiten:
- Die UnterstĂŒtzung des Wayland-Protokolls wurde wesentlich verbessert, das jetzt standardmĂ€Ăig in Umgebungen aktiviert ist, die gleichzeitig Wayland und X11 unterstĂŒtzen und die Erweiterungen fifo-v1 und commit-timing-v1 unterstĂŒtzen.
- Multimedia ist standardmĂ€Ăig aktiviert Server PipeWire, das als höherprioritĂ€r als PulseAudio gekennzeichnet ist.
- Die UnterstĂŒtzung fĂŒr die Videoaufnahme von Webcams (bei Vorhandensein von PipeWire) wurde hinzugefĂŒgt.
- Die Verwendung von Grafiktabletts und digitalen Stiften wurde ermöglicht.
- Die UnterstĂŒtzung fĂŒr hochauflösende Bildschirme (High DPI) wurde erheblich verbessert.
- Die UnterstĂŒtzung von FarbrĂ€umen und die Möglichkeit zur Verwaltung mehrerer FarbrĂ€ume wurden hinzugefĂŒgt. Eine erste UnterstĂŒtzung von HDR wurde implementiert.
- Der Code zur Bearbeitung von Audio wurde vollstĂ€ndig ĂŒberarbeitet. Die UnterstĂŒtzung fĂŒr logische AudiogerĂ€te wurde hinzugefĂŒgt (verschiedene Teile des Programms können mit ihrem eigenen separaten AudiogerĂ€t arbeiten). Werkzeuge zur Verarbeitung von Audioströmen, zur Strömungsumwandlung, zur Ănderung der Abtastrate, zum Mischen, zur Verwaltung der Pufferung sowie zur Ănderung von Tonhöhe und LautstĂ€rke wurden hinzugefĂŒgt. Die automatische Verarbeitung von Verbindungen oder Trennungen von AudiogerĂ€ten sowie der Wechsel des Standard-AudiogerĂ€ts wurden implementiert.
- Ein Backend fĂŒr das Rendering ĂŒber die Vulkan-API wurde in die 2D-Rendering-API integriert. Funktionen zur Arbeit mit OberflĂ€chen ĂŒber die Vulkan-API wurden hinzugefĂŒgt.
- Eine groĂe Bereinigung von veralteten Funktionen wurde durchgefĂŒhrt, die in der heutigen RealitĂ€t nicht mehr relevant sind. Beispielsweise wurde die UnterstĂŒtzung von OpenGL ES 1.0 und DirectFB eingestellt, und Code fĂŒr die Arbeit auf veralteten Plattformen wie QNX, Pandora, WinRT und OS/2 wurde entfernt.
- Es wurde die Möglichkeit zur Organisation der ProgrammablÀufe mit Callback-Aufrufen und zur Definition des Ereignisverarbeitungszyklus in der Hauptfunktion bereitgestellt.
- Die API wurde geĂ€ndert, was die KompatibilitĂ€t beeintrĂ€chtigt. Die Benennungsregeln der API wurden vereinheitlicht â Aufrufe in verschiedenen Teilsystemen tragen jetzt eine einheitliche Namensgebung.
- Neue APIs hinzugefĂŒgt:
- GPU API â plattformĂŒbergreifender Zugriff auf GPUs und 3D-Rendering-Funktionen.
- Dialog API â Verwendung von Dialogen zum AuswĂ€hlen/Ăffnen/Speichern von Dateien und Verzeichnissen.
- Filesystem API â Operationen mit dem Dateisystem, Verzeichnisverwaltung und Dateisuche.
- Storage API â abstrakte Programmierschnittstelle fĂŒr den Zugriff auf verschiedene Datenspeichersysteme.
- Camera API â Zugriff auf Webkameras.
- Pen API â Arbeiten mit Grafiktabletts und digitalen Stiften wie Wacom und Apple Pencil.
-
Quelle: opennet.ru
