text: Aktuelle Version 2.0.22[1]
  Lizenz zlib-Lizenz (Freie Software), bevor SDL 2.0.0: LGPL
  Simple DirectMedia Layer (kurz SDL; englisch für "einfache DirectMedia-Schicht") ist eine freie Multimedia-Bibliothek für verschiedene Betriebssysteme. Sie steht ab der Version 2.0 unter der zlib-Lizenz. Alle älteren Versionen vor 2.0 stehen unter der GNU Lesser General Public License (LGPL).
  Die Bibliothek stellt eine plattformunabhängige Schnittstelle (API) für Grafik-, Sound- und Eingabegeräte bereit, die sich hauptsächlich zur Entwicklung von Spielen und Multimediaanwendungen eignet. Durch die Unterstützung vieler verschiedener Plattformen kann für eine Applikation eine hohe Portabilität bzw. Plattformunabhängigkeit gewährleistet werden. SDL kann mit dieser Eigenschaft auch als Middleware verstanden werden.[2]
  Abstraktionsebenen mit SDL auf verschiedenen Plattformen: ganz oben (blaugefärbt) sind die plattformübergreifenden Teile, ganz unten (braungefärbt) die ausführende Hardware, dazwischen verschiedene Plattformen mit ihren (darüberliegenden) Schnittstellen und Bibliotheken
  Es existieren offizielle und inoffizielle SDL-Anbindungen für dutzende Programmiersprachen, die eine Integration in viele Projekte und Entwicklungskontexte möglich macht.[3][4]
  Durch die Verwendung der liberalen zlib-Lizenz ist eine lizenzrechtlich problemlose Verwendung der SDL-Bibliotheken in binärer und Quelltext-Form sowohl in Open-Source (GPL-kompatibel[5]) wie proprietären Projekten (kein Copyleft) problemlos möglich.
  Bezeichnend für die Beliebtheit und Bekanntheit von SDL ist die Anzahl an Spielen und Programmen, die mit ihr geschrieben wurden, z. B. listet die Spieledatenbank MobyGames 105 Spiele im Jahr 2012,[2] auf der SDL-Webseite selbst sind knapp 700 Spiele gelistet.[6] Bekannte kommerzielle Beispiele sind Angry Birds[7] oder Unreal Tournament, aus dem Open-Source-Bereich z. B. OpenTTD,[8] The Battle for Wesnoth[9], OpenRA[10] oder Freeciv.[11]
  Bei plattformübergreifenden Spieleveröffentlichungen wird häufig auf SDL als Abstraktionsbibliothek gesetzt, da sich der Aufwand gegenüber Implementierungen mit den jeweiligen nativen Plattform-APIs signifikant verringert. Ein Beispiel sind die in den Humble Indie Bundles enthaltenen meist SDL-basierenden Linux-, Mac- und Android-Versionen.
  Weiter findet SDL häufig Verwendung für (spätere) Portierungen auf neue Plattformen, z. B. Homeworld für das Pandora-Handheld[12] oder Jagged Alliance 2.[13]
  Workshop zur Spielprogrammierung unter Verwendung der libSDL, Universität Cádiz (Spanien)
  Entstehung bei Loki Software[Bearbeiten | Quelltext bearbeiten]
  Weiterentwicklung durch die Community[Bearbeiten | Quelltext bearbeiten]
  Obwohl Sam Lantinga im Jahr 2001 von Loki Software zu Blizzard Entertainment wechselte, verwaltet er die Entwicklung von SDL noch immer und ist nach wie vor einer der aktivsten SDL-Entwickler. Ryan C. Gordon, ein weiterer Ex-Loki-Mitarbeiter, arbeitet ebenfalls weiter an und mit SDL z. B. für die Linux und Mac-Versionen von Spielen im Humble Indie Bundle.[14]
  Ryan "Icculus" Gordon, bekannter Verwender und Entwickler von SDL, z. B. im Rahmen des Humble Indie Bundles.[15]
  Inzwischen gibt es eine große Community und weitere freiwillige Helfer, die sich an der Weiterentwicklung beteiligen.
  Für über zwanzig Programmiersprachen existieren SDL-1.2-Anbindungen anderer Hersteller.[3]
  SDL 2.0[Bearbeiten | Quelltext bearbeiten]
  Die Weiterentwicklung der Version 1.2 war als Version 1.3 geplant und wurde im August 2013 als Version 2.0 veröffentlicht.[16] Zusätzliche Fähigkeiten im Vergleich zur Vorversion sind Unterstützung für den Betrieb an mehreren Monitoren, durch Hardware beschleunigte zweidimensionale Grafik sowie bessere Unterstützung von Unicode.[17] Weiterhin sollte Unterstützung von Multitouch und haptischen Eingabegeräten z. B. mit Force Feedback Einzug halten.[18] Im Gegensatz zu früheren Versionen nutzt SDL 2.0 die zlib-Lizenz.[19] Durch diese soll es möglich sein, proprietäre Produkte (Closed Source) zu entwickeln, welche die SDL dann auch statisch binden ("linken") dürfen.
  Snapshots ab Februar 2012 ändern die Versionsnummer von 1.3 auf 2.0. Die erste stabile Version von SDL 2.0 wurde am 13. August 2013 veröffentlicht.[20]
  Die aktuelle stabile Version SDL 2.0.12 wurde am 11. März 2020 veröffentlicht.[21]
  Anbindungen an SDL-2.0 existieren Mitte 2014 für C, C++ und drei weitere Programmiersprachen.[4]
  Weitere Einsatzmöglichkeiten wie Internet-Socket-Abstraktion oder Schriftzugriff werden bewusst nicht offiziell in SDL aufgenommen, jedoch als Erweiterungen von anderen Anbietern auf der LibSDL-Homepage angeboten.[22]
  Beispiel für die Einbindung von SDL in eine Plattform, hier ein Linux-System. SDL bietet z. B. einem Computerspiel Zugriff auf Sound- und Eingabehardware über eigene Sound- und Input-APIs.
  Offiziell unterstützte Plattformen:[23]
  Android (seit SDL 2.0)[24]
  Windows (Win32 und Win64)
  BSD-Derivate (FreeBSD, OpenBSD, NetBSD)
  Unix (AIX, Solaris, IRIX, Tru64 UNIX, QNX)
  Nintendo DS (seit SDL 1.2.12)[25]
  Symbian OS (seit SDL 1.2.12)[25]
  DOS (FreeDOS und Ähnliche; Windows-Versionen laufen mit Hilfe von HX DOS Extender)
  SkyOS[26]
  Beispielhafte Galerie SDL-basierender Spiele[Bearbeiten | Quelltext bearbeiten]
  The Battle for Wesnoth[9]
  Oolite[27]
  Allegro (Programmbibliothek)
  Alberto García Serrano: Programación de videojuegos en SDL. Ediversitas, ISBN 84-95836-08-4 (Buch über die Verwendung der SDL in der Videospiele-Entwicklung, spanisch).
  Ernest Pazera: Focus On SDL. Muska & Lipman / Premier-Trade, ISBN 1-59200-030-4 (weiteres Buch zur SDL, welches sich ebenfalls mit weiteren Bibliotheken für den Simple DirectMedia Layer, wie beispielsweise SDL_net, befasst).
  Ron Penton: Data Structures for Game Programmers, Muska & Lipman/Premier-Trade, ISBN 1-931841-94-2 (geht hauptsächlich zwar auf Datenstrukturen eines Spiels ein, enthält aber auch Beispiele mit der SDL).
  John R. Hall: Programming Linux Games. No Starch, ISBN 1-886411-49-2 (Erstes Buch, welches sich mit der SDL befasst. Enthält auch Informationen über die Programmierung in Linux im Allgemeinen und der Netzwerkprogrammierung), Onlineversion: overcode.net (Memento vom 22. Januar 2003 im Internet Archive; PDF) LaTeX-Sourcen (Memento vom 14. Februar 2003 im Internet Archive).
  Offizielle internationale SDL-Website
  Offizielle deutsche SDL-Website
  Simple DirectMedia Layer bei MobyGames (englisch)
  SDL Documentation Wiki (englisch)
  Deutsche Übersetzung der SDL-Funktionen
  ↑ github.com . 25. April 2022 (abgerufen am 8. Mai 2022).
  ↑ a b Middleware: SDL Group Description (englisch) MobyGames. 18. Mai 2012. Abgerufen am 18. Mai 2012: "Games that use the very portable Simple DirectMedia Layer."
  ↑ a b SDL Language Bindings. Archiviert vom Original am 16. Januar 2013; abgerufen am 12. Juli 2009 (englisch).
  ↑ a b SDL Language Bindings. Archiviert vom Original am 21. August 2013; abgerufen am 25. Oktober 2013 (englisch).
  ↑ Kommentar zur zlib-Lizenz bei der FSF (englisch)
  ↑ SDL Testimonials . Galaxygameworks.com. Archiviert vom Original am 16. Juli 2011. Abgerufen am 1. Februar 2012.
  ↑ a b Compiling OpenTTD. GitHub, 2022, abgerufen am 7. Februar 2022.
  ↑ a b Building Wesnoth from Source. GitHub, 2022, abgerufen am 7. Februar 2022.
  ↑ Compiling OpenRA. GitHub, 2022, abgerufen am 7. Februar 2022.
  ↑ SDLClient - Freeciv. Fandom.com, abgerufen am 7. Februar 2022.
  ↑ JA2-Stracciatella Compilation. GitHub, 2022, abgerufen am 7. Februar 2022.
  ↑ Ben Kuchera: The latest Humble Bundle offers amazing games, promotes multiplatform releases (englisch) In: ars technica . Abgerufen am 6. Mai 2012.
  ↑ SDL: A Quick Introduction to SDL 1.3 (Memento vom 24. Juni 2012 im Internet Archive)
  ↑ Arnin Ronacher: A Gentle Introduction into SDL 1.3 (englisch) 6. April 2011. Archiviert vom Original am 4. Januar 2012. Abgerufen am 30. Mai 2012.
  ↑ SDL 1.3 licensing terms (englisch) Sam Lantinga. 7. April 2011. Abgerufen am 21. August 2011.
  ↑ SDL 2.0.0 Released! 13. August 2013, abgerufen am 25. Oktober 2013 (englisch).
  ↑ Index of /release. Abgerufen am 15. Mai 2020 (englisch).
  ↑ The Simple Directmedia Layer documentation (Memento vom 15. April 2013 im Internet Archive)
  ↑ Ryan C. Gordon: README.Platforms (englisch) libsdl.org. 9. April 2012. Archiviert vom Original am 20. Januar 2012. Abgerufen am 7. Mai 2012: "This is a list of the platforms SDL supports, and who maintains them."