Simple DirectMedia Layer

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
Simple DirectMedia Layer
Ontwikkelaar Sam Lantinga
Recentste versie 2.0.1 
(24 oktober 2013)
Status Actief
Besturingssysteem Multiplatform
Geschreven in C
Categorie API
Licentie Zlib-licentie
Website (en) Projectpagina
Portaal  Portaalicoon   Informatica
Vrije software

Simple DirectMedia Layer (SDL) is een vrije cross-platform bibliotheek met API's voor graphics, geluid, muziek en invoer voor multimedia-applicaties en computerspellen. Het is geschreven in C en het is vrijgegeven onder de GNU Lesser General Public License. Computerprogramma's die SDL gebruiken kunnen uitgevoerd worden op veel besturingssystemen, waaronder Linux, Windows, Mac OS X, AmigaOS, FreeBSD, OpenBSD en Solaris.

Geschiedenis[bewerken]

De eerste versie van SDL werd begin 1998 uitgebracht door Sam Lantinga terwijl hij bij Loki Software werkte. Hij kwam op het idee toen hij een Windows-applicatie overzette naar een Macintosh. Hij gebruikte vervolgens SDL om Doom over te zetten naar BeOS. Versie 2.0 werd uitgebracht op 12 augustus 2013. Deze versie was onder meer het resultaat van ontwikkelaars ingehuurd door Valve.[1] Bij versie 2.0 veranderde de licentie naar de Zlib-licentie.[2]

Overzicht[bewerken]

Verscheidene abstractielagen in samenwerking met SDL.

SDL biedt een abstractie voor de onderliggende systemen (voor graphics, geluid, ...) van het besturingssysteem. Een applicatie kan hierdoor op meerdere besturingssystemen uitgevoerd worden aangezien de applicatie het onderliggende systeem van het betreffende besturingssysteem gebruikt.

Zo maakt Windows voor de graphics gebruik van DirectX terwijl op andere besturingssystemen, zoals Linux, het X Window System wordt gebruikt via Xlib. Op Mac OS X wordt Quartz gebruikt.

SDL is onderverdeeld in de volgende subsystemen die een bepaald aspect van de applicatie verzorgen: Video (ook voor events en threads), Audio, Time, Joystick en CD-ROM. Daarnaast zijn er enkele officiële bibliotheken met extra functionaliteit:

Er zijn bindings voor zeer veel programmeertalen, van bekende talen (zoals C#, Perl, Pascal en Python, via pygame) tot relatief onbekende talen (zoals Euphoria en Pliant).

Afbeeldingen[bewerken]

Externe link[bewerken]

Bronnen, noten en/of referenties