Auron

Vuoi reagire a questo messaggio? Crea un account in pochi click o accedi per continuare.
Auron

The quieter you become, the more you hear


    I MOTORI GRAFICI

    avatar
    Ospite
    Ospite


    I MOTORI GRAFICI Empty I MOTORI GRAFICI

    Messaggio  Ospite Gio Mag 14, 2009 3:51 pm

    Il motore grafico è il nucleo software di un videogioco o di qualsiasi altra applicazione con grafica in tempo reale. Esso fornisce le tecnologie di base, semplifica lo sviluppo, e spesso permette al gioco di funzionare su piattaforme differenti come le console o sistemi operativi per personal computer. La funzionalità di base fornita tipicamente da un motore grafico include un motore di rendering ("renderer") per grafica 2D e 3D, un motore fisico o rilevatore di collisioni, suono, scripting, animazioni, intelligenza artificiale, networking, e scene-graph.

    Motori grafici avanzati come l'Unreal Engine 3, il Source Engine, il RenderWare e il Gamebryo forniscono una suite di strumenti di sviluppo visuali in aggiunta alla componente software riutilizzabile. Questi strumenti vengono forniti generalmente all'interno di un ambiente di sviluppo integrato (dall'inglese integrated development environment o più comunemente IDE) affinché permettano lo sviluppo semplificato e rapido (RAD) dei giochi secondo un metodo di progettazione data-driven. Questi motori grafici vengono chiamati spesso "game middleware" perché, in accordo con il significato commerciale del termine, forniscono una piattaforma flessibile e riutilizzabile che fornisce tutte le funzionalità chiave necessarie esternamente per sviluppare un'applicazione ludica riducendo i costi, la complessità e il tempo impiegato; tutti fattori critici e altamente competitivi nell'industria di videogiochi e computer.

    Come altre applicazioni di transizione, i motori grafici sono spesso indipendenti dalla piattaforma, permettendo allo stesso gioco di girare su più piattaforme incluse le console quali PlayStation, Xbox, e Nintendo, e sistemi operativi come Microsoft Windows e Mac OS) con nessuno o qualche piccolo cambiamento al codice sorgente del gioco.

    Spesso i middleware sono progettati con un'architettura modulare che permette di sostituire o estendere parti del motore con soluzioni più specializzate (e magari costose), come il software Havok per la fisica, FMOD per il suono, o SpeedTree per il rendering. Alcuni motori grafici come il RenderWare sono addirittura concepiti come una serie di middleware indipendenti che possono essere combinati a piacere per creare un motore personalizzato, piuttosto che modificare un motore già esistente. In qualunque modo si ottenga la flessibilità, questa rimane comunque una forte priorità, a causa della grande varietà d'applicazioni cui i motori grafici devono rispondere. Nonostante l'idea di motore grafico rimandi immediatamente al concetto di videogioco, in verità essi sono usati in molti altri tipi d'applicazioni interattive che richiedono grafica in tempo reale, come dimostrazioni commerciali, progettazioni architetturali, simulazioni, e ambienti di modellazione.

    Alcuni motori forniscono solo capacità grafiche, invece della vasta gamma di funzionalità richieste da un videogioco. Questi motori affidano agli sviluppatori il compito di inserirle, anche tramite altri middleware, magari da altri giochi. A motori come questi calza veramente la definizione di "motore grafico" in senso stretto. Non c'è comunque una convenzione condivisa sul termine: per il senso generale si può usare il termine "motore 3D". Esempi di motore grafico in senso stretto sono: Axiom, OGRE, Power Render, Crystal Space e Genesis 3D. Molti motori moderni forniscono lo scene-graph, una rappresentazione del mondo 3D orientata agli oggetti che spesso semplifica lo sviluppo del gioco e che può essere usata per un rendering più efficiente di mondi virtuali molto vasti.

    I motori grafici sono costruiti nella maggior parte dei casi su delle API grafiche, come Direct3D o OpenGL, che offrono un'astrazione software della GPU o della scheda video. Sono spesso usate anche librerie di basso livello, come DirectX, SDL e OpenAL, le quali offrono un accesso diretto ad altro hardware (ad esempio mouse, tastiera, joystick, scheda di rete, e scheda audio). Prima dell'avvento della grafica 3D accelerata, si usavano render software come le API Glide. Soluzioni software come questa sono ancora utilizzate in alcuni strumenti di modellazione o di rendering statico, in cui la precisione è più importante della velocità, o quando l'hardware del computer non soddisfa i requisiti (come il supporto degli shader o delle Direct3D 10, come nel caso di Windows Vista).

    Il termine "motore grafico" è nato alla metà degli anni '90, con uno stretto legame ai videogiochi 3D, in particolare agli sparatutto in prima persona. La popolarità di Doom e di Quake (entrambi prodotti da id Software) era tale che gli altri sviluppatori, piuttosto che creare giochi da zero, prendevano in licenza le componenti principali del codice e si limitavano a creare il "game content" (o "game assets"): ambientazione, armi e livelli. Alcuni giochi successivi, come "Quake III Arena" e "Unreal" di Epic Games (1998) furono sviluppati seguendo questo metodo. La concessione di licenze di queste tecnologie si è dimostrata una valida voce in entrata per i bilanci di alcuni team di programmatori, visto che una singola licenza per un motore commerciale di fascia alta può variare da 8.000€ fino a 3.000.000€ (come nel caso di Warcraft III), e si possono avere decine di compagnie licenziatarie (per l'Unreal Engine). Sicuramente motori riutilizzabili permettono di creare seguiti di giochi in modo molto più facile e veloce, e questo è un importante vantaggio nella moderna industria videoludica.

    Il continuo avanzamento della tecnologia dei motori grafici ha permesso una netta separazione tra rendering, scripting, artwork e level design. Al giorno d'oggi è comune negli sviluppatori un rapporto tra artisti e programmatori di 4:1.

    Gli sparatutto in prima persona sono ancora la principale utenza dei motori grafici di terze parti, ma il loro uso si sta diffondendo in altri generi. Alcuni esempi sono il gioco di ruolo The Elder Scrolls III: Morrowind, i MMORPG Dark Age of Camelot (basati su NetImmerse) e Lineage II (basato sull'Unreal engine). I motori grafici sono egualmente usati in ambito console, come il Renderware, usato in Rayman 2 Revolution, Grand Theft Auto III e Burnout 2 e 3.

    I motori moderni rientrano di diritto tra i software più complessi in assoluto, e possiedono frequentemente decine di sistemi accuratamente sincronizzati per garantire un buon controllo dell'esperienza offerta all'utente finale.

    Nonostante che il termine fu coniato negli anni '90, anche nel decennio precedente videro la luce software le cui caratteristiche ne fanno "motori grafici". Ad esempio l'Adventure Game Interpreter e il Sierra's Creative Interpreter di Sierra, lo SCUMM di LucasArts e il Freescape engine di Incentive Software. Ad ogni modo, questi sistemi non furono mai impiegati in titoli di terze parti.

    Alcune compagnie si sono specializzate nello sviluppo di "middleware". Questi programmatori cercano di "preinventare la ruota", creando grandi "ambienti" software che riescano ad includere qualsiasi caratteristica di cui un programmatore di giochi possa necessitare. La maggior parte dei middleware include strumenti che facilitano la creazione e lo sviluppo, legati a grafica, sonoro, fisica e funzioni d'intelligenza artificiale. Gamebryo e RenderWare sono due soluzioni di successo che rientrano in questa casistica.

    Alcuni di questi software sono in grado di svolgere solo una specifica funzione, ma con risultati molto superiori a motori generici (un esempio è SpeedTree, renderer specifico per piante ed alberi, impiegato nell'RPG The Elder Scrolls IV: Oblivion).

    Due famosi sistemi che forniscono utili tool sono Havok e buona parte dei RAD Game Tools. Havok fornisce un robusto sistema di simulazione fisica mentre RAD sviluppa sistemi per il video rendering, audio e grafica 3D.

    Alcuni middleware contengono il codice sorgente completo, altri rilasciano una semplice interfaccia API per una libreria binaria precompilata. Alcuni di questi possono essere licenziati in maniera differente, solitamente per garantirsi un incasso maggiore nella vendita del relativo codice.

    Una nota sottoclasse di motori grafici 3D è quella che comprende gli sparatutto in prima persona (FPS, First Person Shooter). Lo sviluppo in termini di qualità è fatto utilizzando la scala umana. Mentre i simulatori di volo, quelli di guida ed in giochi di strategia in tempo reale forniscono realismo su larga scala, i FPS sono la punta della computer grafica su scala umana.

    Lo sviluppo di nuovi motori può essere caratterizzato da un aumento della tecnologia disponibile.

    I tentativi di classificarli in generazioni portano ad una definizione arbitraria della linea di separazione tra i "vecchi motori" e quelli nuovi.

    La classificazione è complicata dal momento che attingono sia a nuove che a vecchie tecnologie. Quelli considerati avanzati un anno, diventano lo standard della stagione successiva. I giochi composti da un misto di vecchie e nuove caratteristiche sono la norma. Ad esempio, Jurassic Park: Trespasser (1998) introdusse la fisica negli FPS, ma il suo uso non divenne comune sino al 2002 circa. Red Faction (2001) usò muri e pavimenti distruttibili, cosa di uso limitato fino al 2004. Codename Eagle (2000) aggiunse i veicoli da combattimento ai giochi FPS. Tribes 2 e Battlefield 1942 potenziarono l'integrazione di mezzi-veicolari e sparatutto, seguiti a breve termine da Halo ed Unreal Tournament 2004.
    avatar
    Ospite
    Ospite


    I MOTORI GRAFICI Empty Re: I MOTORI GRAFICI

    Messaggio  Ospite Gio Mag 14, 2009 3:53 pm

    uno da non usare è il genome perché è poco ottimizzato
    avatar
    Ospite
    Ospite


    I MOTORI GRAFICI Empty Re: I MOTORI GRAFICI

    Messaggio  Ospite Lun Mag 18, 2009 5:12 pm

    Giusto hai ragione Darius.

    Contenuto sponsorizzato


    I MOTORI GRAFICI Empty Re: I MOTORI GRAFICI

    Messaggio  Contenuto sponsorizzato

      Argomenti simili

      -

      La data/ora di oggi è Ven Nov 22, 2024 5:04 am