lunedì 11 gennaio 2010

DirectX o OpenGL??

Come è possibile creare oggetti tridimensionali al computer? Quando pensiamo al computer ed ai sui programmi dobbiamo sempre immaginare un sistema a più strati. Lo strato più pensate è ovviamente formato dall'hardware con il suo complesso sistema di parti tra loro collegate attraverso varie "vie" di comunicazioni definite "bus". Salendo in questa immaginaria "torta" ovviamente troviamo il sistema operativo che fornisce la struttura portante per la gestione ed esecuzione di compiti, programmi ed interfacciamenti fino ad arrivare ovviamente al singolo programma in esecuzione. Ovviamente per poter comunicare velocemente con insiemi e strutture del computer vengono definite delle chiamate denominate API attraverso le quali è possibile avviare specifiche procedure, disegnare sul video o magari riprodurre un suono. Nello specifico esistono due grandi famiglie di API per la grafica: DirectX della società Microsoft(R) ed OpenGL del consorzio Khronos Group. Entrambe le librerie (così vengono definite genericamente) hanno i loro pregi e difetti ed in rete esistono lunghe ed appassionate diatribe su cosa utilizzare quando ed in che progetto. Quale sia la migliore o quale dia più vantaggi porta alla solita risposta: dipende! In generale quando si vuole sviluppare una applicazione grafica che funzioni su più piattaforme (ad esempio Linux, Mac OS, Windows, etc...) allora quasi sempre si sceglie OpenGL. Se invece si vuole velocemente avere un ambiente funzionante omnicomprensivo ed ottimizzato che funzioni sotto Windows e che gestisca non solo le primitive grafiche, ma anche possibili dispositivi come pad, joystick, etc o l'audio allora la risposta è sicuramente impratichirsi con le DirectX. Va comunque detto che le argomentazioni da me esposte possono essere solo alcuni dei fattori da tenere in conto. La creazione di un qualunque prodotto software è sempre il difficile compromesso tra esigenze commerciali, tecniche, di tempo e risorse. L'unica possibilità è quindi quella di essere capaci di adattarsi velocemente alla situazione, scegliendo ciò che è più utile nel caso esaminato. Di seguito il link di una società che affrontando queste problematiche ha scelto OpenGL e spiega il perchè di questa scelta.

Link di riferimento:

http://www.bspcn.com/2010/01/08/why-you-should-use-opengl-and-not-directx/

Nessun commento:

Posta un commento