Simple DirectMedia Layer: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
infobox, storia, link |
storia, architettura, portabilità, note |
||
Riga 15:
|Generi = [[Application Programming Interface|API]]
|Genere =
|Licenza = 1.2 [[GNU Lesser General Public License|GNU LGPL]]
|SoftwareLibero = sì
|Lingua =
Riga 24:
== Storia ==
[[Sam Lantinga]] ha creato la libreria, rilasciandola
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>{{cite web |url=http://wiki.libsdl.org/moin.cgi/Roadmap |title=SDL 2.0 Roadmap |accessdate=25 luglio 2012}}</ref> SDL 2.0 è distribuita sotto la [[Zlib license]], e quindi liberamente utilizzabile con linking statico in progetti closed-source commerciali, a differenza di SDL 1.2 che invece permette solo il linking dinamico<ref>{{cite web | url=http://www.libsdl.org/license.php | title=Licensing the Simple DirectMedia Layer library | accessdate=16 luglio 2012}}</ref>
== Architettura ==
La libreria ha collegamenti con quasi ogni linguaggio di programmazione esistente, dal popolare [[C++]], [[Perl]], [[Python]] (attraverso [[pygame]]), [[Pascal (linguaggio)|Pascal]] ai meno conosciuti come il [[Euphoria (Linguaggio di programmazione)|Euphoria]] o il [[Pliant]]. Questo, e il fatto che è licenziato sotto la [[LGPL]], fa di SDL una scelta comune per molte applicazioni multimediali.
SDL
La libreria è suddivisa in ''sottosistemi'', quali il Video (gestisce sia le funzioni per le superfici e per l'accesso a OpenGL), l'Audio, il CD-ROM, il Joystick e il
* ''SDL_image'' - supporto per diversi formati di immagini
Line 39 ⟶ 41:
* ''SDL_rtf'' - Renderizzazione semplice del [[Rich Text Format]]
==
[[Immagine:SDL Layers.svg|thumb|250px|Livelli di astrazione
SDL ha la parola "layer" nel suo
Per come è
▲SDL ha la parola "layer" nel suo titolo perché è veramente un wrapper attraverso funzionalità specifiche per i sistemi operativi. Lo scopo principale di SDL è di fornire un framework comune per accedere a queste funzionalità.
▲Per come è progettato SDL, il codice sorgente è suddiviso in moduli separati per ogni sistema operativo, per poter fare chiamate al sistema operativo sottostante. Quando SDL è compilato, i moduli corretti sono selezionati per il giusto sistema operativo.
Sulle piattaforme [[X Window System|X11]], incluso [[Linux]], SDL usa
▲Su [[Microsoft Windows]], SDL fornisce un wrap per le [[DirectX]], che a loro volta sono un wrapper al driver video. Le vecchie versioni di SDL utilizzavano le DirectX 5, ma SDL 1.2 (la release stabile corrente) richiede le DirectX 7 di default. Sam Lantinga ha iniziato i piani per utilizzare le DirectX 8 nelle future release di SDL [http://www.libsdl.org/pipermail/sdl/2000-December/032521.html].
▲Sulle piattaforme [[X Window System|X11]], incluso [[Linux]], SDL usa le [[Xlib]] per comunicare con il sistema X11 per gli eventi grafici.
Su [[Mac OS X]], SDL usa [[Quartz]].
== Sottosistemi e sintassi ==
La sintassi di SDL si basa
* Il sottosistema Video, eventi e thread - questo fornisce funzionalità per il video, [[multi-threading]], e [[gestione degli eventi]].
* Il sottosistema Audio - questo fornisce le funzionalità audio.
* Il sottosistema
* Il sottosistema Joystick
* Il sottosistema CD-ROM
Line 75 ⟶ 76:
== Altri progetti ==
{{interprogetto|commons=Category:Simple DirectMedia Layer}}
== Note ==
<references/>
== Collegamenti esterni ==
|