Simple DirectMedia Layer: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: rimuovo parametro 'SitoWeb' ridondante (valore uguale a Wikidata) |
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti. Etichette: Modifica visuale Modifica da mobile Modifica da web per mobile Attività per i nuovi utenti Suggerito: aggiungi collegamenti |
||
(10 versioni intermedie di 8 utenti non mostrate) | |||
Riga 5:
|Didascalia = Logo
|Sviluppatore = [[Sam Lantinga]]
|UltimaVersioneBeta = 2.0.0-7635
|DataUltimaVersioneBeta = 13 agosto, [[2013]]
|SistemaOperativo = multipiattaforma
|Genere = Libreria software
|Licenza = 1.2 [[GNU Lesser General Public License|GNU LGPL]] / 2.0 [[Zlib license]]
Line 18 ⟶ 15:
[[File:Linux kernel and OpenGL video games.svg|thumb|Simple DirectMedia Layer]]
'''Simple DirectMedia Layer''' ('''SDL''') è una [[Libreria software|libreria]] [[free software|libera]] multimediale multi piattaforma, scritta in [[C (linguaggio)|C]], che crea un livello astratto al di sopra di varie piattaforme software grafiche e sonore e dunque può controllare video, audio digitale, [[CD-ROM]], suoni, thread, caricamento condiviso di oggetti, timer e networking. Questa astrazione permette ai programmatori di scrivere un'applicazione [[multimedialità|multimediale]] una sola volta e farla girare su molti sistemi operativi: la versione corrente supporta ufficialmente [[Linux]], [[Microsoft Windows|Windows]], [[BeOS]], [[MacOS]] e [[macOS]], [[FreeBSD]], [[OpenBSD]], [[BSD/OS]], [[Solaris (sistema operativo)|Solaris]], [[IRIX]] e [[QNX]] ma il [[codice sorgente]] offre il supporto non ufficiale anche per [[Windows CE]], [[AmigaOS]], [[Dreamcast]], [[Atari]], [[NetBSD]], [[AIX (sistema operativo)|AIX]], [[OSF/Tru64]], [[RISC OS]] e [[SymbianOS]].
== Storia ==
[[Sam Lantinga]] ha creato la libreria, rilasciandola agli inizi del 1998, mentre lavorava per la [[Loki Software]]. Gli venne l'idea mentre stava portando un'applicazione da Windows a Macintosh. Ha poi utilizzato SDL per portare ''[[Doom]]'' in [[BeOS]] (vedi [[Doom source port]]). Parecchie altre librerie libere sono state sviluppate per funzionare con SDL, quali ad esempio [[SMPEG]] e [[OpenAL]]. Sam Lantinga ha anche fondato la [[Galaxy Gameworks]] nel 2008 per fornire supporto commerciale ad SDL su sistemi [[iOS]]; tuttavia la compagnia è stata dismessa dallo stesso Lantinga nel 2011.<ref>{{Cita web |titolo=Exploring the Galaxy | url=
SDL 2.0 è un aggiornamento importante al codice di SDL 1.2 e modifica ampie porzioni dell'API. Alcune nuove caratteristiche comprendono il supporto a finestre multiple, il supporto a dispositivi di input multipli (molti mouse, tastiere, ecc...), grafica 2D accelerata, ed un supporto [[Unicode]] migliore.<ref>{{Cita web |url=
== Architettura ==
La libreria ha collegamenti con quasi ogni [[linguaggio di programmazione]] esistente,
SDL è molto semplice; funziona solamente come un wrapper leggero e multi piattaforma che fornisce il supporto alle operazioni 2D sui pixel, suoni, accesso ai file, gestione degli eventi, temporizzatori, thread e altro. È spesso usata come complemento alle [[OpenGL]] settando l'output grafico e fornendo la gestione dei dispositivi di input, funzionalità che sono ben oltre lo scopo delle OpenGL.
Line 44 ⟶ 41:
Per come è stata concepita l'architettura, gran parte del codice sorgente di SDL è suddiviso in moduli separati per ogni sistema operativo; quando SDL è compilato, i moduli corretti sono selezionati per il sistema operativo di destinazione.
Sotto [[Microsoft Windows]], SDL fornisce di default un collegamento all'
Sulle piattaforme [[X Window System|X11]], incluso [[Linux]], SDL usa [[Xlib]] per comunicare con il sistema X11 per la grafica e gli eventi.
Line 51 ⟶ 48:
== Sottosistemi e sintassi ==
La sintassi di SDL si basa su funzioni: tutte le operazioni fatte in SDL vengono eseguite passando parametri a funzioni. Strutture di dati speciali sono usate per immagazzinare le informazioni
* Il sottosistema Video, eventi e thread - questo fornisce funzionalità per il video, [[multi-threading]], e [[gestione degli eventi]].
Line 76 ⟶ 73:
== Altri progetti ==
{{interprogetto
== Collegamenti esterni ==
* {{cita web |
* {{cita web|
* {{cita web|http://www.libsdl.de|SDL sito web tedesco|lingua=de}}
* {{en}} [http://www.devmaster.net DevMaster.net] - un sito di sviluppo giochi che ha anche articoli e tutorial su SDL.
* {{cita web|1=http://gpwiki.org/index.php/SDL_tutorials|2=Il tutorial Wiki per la programmazione dei giochi su SDL|lingua=en|accesso=25 dicembre 2007|urlarchivio=https://web.archive.org/web/20071026071234/http://gpwiki.org/index.php/SDL_tutorials#|dataarchivio=26 ottobre 2007|urlmorto=sì}}
{{Portale|Software libero}}
|