Entra

View Full Version : Doom 3, Direct X 8 e 9: l'evoluzione dei motori grafici


gik25
10-06-2003, 01:15
Se credete che non valga la pena di leggere tutto, leggete i commenti di chi ha già letto: http://www.tgmonline.it/forum/index.php?t=msg&th=91397&rid=15379&S=21d48afa141cceaf0f9cae99e476a006&pl_view=&start=0#msg_893231

Un utente ha svolto un ottimo lavoro sulla descrizione degli shader, l'articolo è pubblicato sul mio sito (www.hyperreview.com), ma per i pigri lo riporto anche qui.

Molto Interessante, soprattutto la seconda parte (da metà in poi):

Articolo Tecnico di:
Evoluzione dei motori grafici - Doom III, Half-Life 2, Unreal 2
DUKE






Premessa.
Un paio di doverose premesse: un motore 3d è composto da svariati elementi, che vanno dalla IA, alla fisica, alle interfacce utente, alla sezione audio per finire con la vera e propria gestione del mondo, che vediamo tramite la renderizzazione di ambienti pseudo 3D.
Col tempo, lentamente tutto tende a migliorarsi, limando i difetti ed ampliando i pregi, in maniera naturale. Migliorare non innovare.
Migliorare è un processo lento e costante, innovare è l'attimo esplosivo che porta a qualcosa di completamente diverso. La fisica, l'IA, le interfacce utente migliorano mentre la renderizzazione degli ambienti si innova. Il motivo è semplice: tutti sappiamo cosa aspettarci per giudicare un comportamento “realistico” ed è a quello vogliamo arrivare.
In generale, riusciamo a distinguere un comportamento “idiota” da uno plausibile che è esattamente ciò che vorremmo. Con il tempo, la potenza dei prossimi HW, ci si avvicinerà sempre più ad una finzione credibile, un poco per volta.
La rappresentazione a video, invece, non sarà mai “realmente finta”, proprio perché “filtrata” da un monitor. Quando si guarda la TV non si ha alcun dubbio tra quale sia realtà e quale sia finzione ed allo stesso modo quando avremo il fotorealismo non avremo neanche lontanamente una “finzione credibile”, perchè sarà sempre un monitor quello che avremo di fronte.
Pensando ai motori 3D ed alle loro innovazioni la prima cosa che viene in mente è la “grafica”, in senso lato: il resto semplicemente si migliora. In questo articolo si parla in modo informale delle differenti tecnologie di rappresentazione a video, nei limiti che una conoscenza non professionale comporta. Se siete programmatori, girate al largo: è per il vostro bene! :D

Iniziamo?
Partiamo dal una considerazione: la “grafica” è un connubio di HW/SW, quindi se in un determinato momento abbiamo avuto a disposizione realmente delle features, queste sono state legate in modo inscindibile all'HW del momento. Possiamo vedere un parallelismo tra i principali motori 3D e le features HW supportate dalle schede video.
Passiamo ad alcune osservazioni riguardo i tre principali motori grafici del prossimo futuro, nei limiti di ciò che ci è concesso sapere ad oggi: Unreal 2, Half-Life 2 e Doom3. Qualcuno obietterà che due devono ancora uscire, ma se siete concordi con me nell’affermare che un motore grafico è legato alle features HW del momento e che queste ultime sono accessibili tramite interfacce software come il Direct 3D, allora “analizzando” le differenze tra le varie versioni di queste ultime, possiamo mettere in luce le differenze principali tra i motori che vi si appoggiano.

Unreal 2 rappresenta al meglio le Direct X 8/8.1, Doom3 le (Open GL 2.0 con ottimizzazioni proprietarie, che grosso modo equivalgono alle) DX9 ed HL2? Bella domanda, da ciò che ho visto e letto in giro, “sembra” un DX 8.1 con i fiocchi, “sporcato” di DX9: un tramite ideale tra due generazioni differenti.

Cosa abbiamo qui?
Cominciamo a vedere U2 (o Unreal Tournament 2003): quali grosse differenze possiamo notare con, Unreal o Unreal Tournament? Ambienti più grandi e dettagliati, una fisica più “credibile” ed un audio più ricco. E poi? Ombre ed effetti di luce più “gagliardi”, ovviamente. La domanda sorge spontanea: sarebbe stato possibile realizzare gli stessi identici schemi con i motori precedenti?
Se la risposta è no, perchè?
Dunque, come sapete l'introduzione delle DX8 e delle GF3 ha portato due grandi innovazioni: i vertex ed i pixel shaders. Tutti sappiamo che cosa è uno shader (una specie di motore programmabile che accetta una serie di istruzioni, di variabili e costanti, applica un programma definito dai caratteri precedenti e descritto tramite un linguaggio di basso livello ad un vertice, o gruppo di vertici, oppure ad un pixel, o gruppi di pixel) DX8.

Cosa avevamo a disposizione prima degli shader? Dove stà il “bello”? Prima avevamo comunque dei motori, solo che questi sapevano compiere 10, 100, 1000 operazioni (su un oggetto), eventualmente combinandone tra loro un certo numero, per ottenere i vari effetti.
Ricordate l'NSR delle GF2 (Nvidia Shader Rasterizer)? Ecco, quello è stata la massima espressione di questo concetto: una GPU munita di pipeline con due sole texture unit poteva processare fino a 7 effetti alla volta, con lo scopo di ottenere un effetto più complesso (o reale).
Quindi era possibile, per esempio, ottenere un effetto acqua spettacolare, con tutte le riflessioni e le rifrazioni del caso (certo andava bene solo nelle demo, pena fps ignobili... però era possibile).

Quest'ultima frase dovrebbe già fare intuire i limiti di un architettura rigida (DX7): oltre alla limitazione alla fantasia degli autori, la realizzazione di effetti complessi distrugge le prestazioni.
Quindi, alla domanda “Sarebbe stato possibile realizzare gli stessi identici schemi con i motori precedenti?”, la risposta migliore è: quelli “leggeri”, si, ma con grosse richieste HW e con GPU decisamente più veloci (tanti Mhz) e con molta RAM mentre quelli più pesanti no, o meglio, all'estremo si, ma solo teoricamente. Il motore di U2 fa questo e niente di più, niente di meno. L'ho fatta troppo facile? Si, vediamo di approfondire.

Direct X: Versioni a confronto
Prendiamo un dado ed immaginiamo di volerlo rappresentare a video. Un dado è un cubo con gli spigoli smussati, quindi potremmo, per esempio, costruire un semplice cubo “tagliare” e raccordare gli spigoli per poi applicarci le texture (DX7) oppure scrivere un piccolo shader, in questo caso vertex, che schiacci tutti i vertici nel modo migliore (DX8). In questo secondo caso abbiamo da giostrare “solo” 12 triangoli (6 quadrati delle facce) ed ai raccordi “pensa” la scheda video. Nel primo ci smaziamo noi a costruire il wireframe ad hoc. Inoltre gli shaders agiscono in maniera dinamica: il nostro dado potrebbe pulsare, per esempio. In DX7 ci si dovrebbe calcolare i vertici per ogni nuova posizione, passarli alla SV che poi macinerebbe il tutto per realizzare il frame, con le DX8 una volta “generato” il primo cubo la CPU non si dovrebbe occupare d'altro.

Apro una parentesi: la CPU trasforma le istruzioni in un linguaggio comprensibile alla SV, quindi, per ora, la primissima parte del lavoro di costruzione della matrice relativa è ancora affibbiato al processore. Dopo ci pensano le nostre prodigiose ATI o Nvidia, ma un minimo di pappa pronta serve ancora.

Tornando a noi, a differenza sostanziale è questa: a video non vediamo nulla di concettualmente sconvolgente, ma più passa il tempo e più vediamo processi che finalmente sono applicabili in modo fruibile (non a mezzo frame/ora). Nella stessa ottica vengono le DX9 che non innovano ma migliorano. Cosa? Gli shader appunto: nelle DX8 sono difficilmente programmabili e limitati: poche istruzioni (e variabili)/programma, impossibilità di eseguire più programmi per farne uno complesso. Inoltre viene introdotta esplicitamente la gestione delle ombre, che non sono più generici effetti a video, ma hanno una loro dignità.

Doom 3: Massima Vertex Shader
Doom3, come idea di base, non fa un uso smodato di poligoni: spreme all'inverosimile i pixel shaders. Immaginiamo di voler rappresentare un tubo che corre lungo una parete ed illuminato da una luce, che magari si muove: per avere la migliore resa possiamo usare moltissimi poligoni ed una texture ad alta risoluzione con qualche effetto di contorno e sbatterci una fonte di luce (con il calcolo delle relative ombre), oppure usare pochi poligoni, sfruttare effetti shaders per dire alle texture del tubo come modificarsi in base alla posizione della sorgente luminosa ma anche, e più semplicemente, usare effetti per far sembrare lisce superfici frastagliate da pochi triagoli.

Certo, serve un motore (ed uno studio delle capacità HW) con i controfiocchi, ma Carmack è un Dio, quindi il probema non si pone. :D Inoltre, considerato che si usano effetti sulle texture per alleggerire il calcolo dei vertici (effetto statico), e che di conseguenza, mancando poligoni, tutte le tecniche e gli effetti che ne fanno uso devono essere emulati tramite shaders (effetti dinamici), e che tutti gli shaders (quelli statici e dinamici) devono andare quasi sempre in contemporanea, le variabili ed il grado di complessità delle istruzioni aumenta esponenzialmente.

Un altro punto importante è che, vista la complessità degli shaders che servono, non si può pensare di fare tutto in assembly: e qui le DX9 offrono una specie di C per la scrittura di questi “motori”, rendono più facile la vita ai programmatori che sono incentivati a sfruttare a fondo queste nuove possibilità. Tornando a noi, si risparmiano risorse sui vertici e si investono sulle texture. Però facendo così si liberano risorse per la gestione delle ombre e per i vertex shaders. In che senso? Bene, pensiamo al nostro omino 3d: fico, dettagliato e munito di ombra. In se non è un modello complesso, molte delle sue parti sono in realtà un pezzo unico (per risparmiare poligoni), quindi per farle muovere si ricorre alla deformazione tramite programmini appositi, sarà poi l'illusione data dagli effetti sulle texture a non farci vedere l'inganno. Ok, diciamo che il nostro omino ha alzato il braccio: in realtà non ha mosso tanti poligoni, giusto? Quindi i calcoli per l'ombra saranno ridotti, considerando poi che oggi giorno c'è un buffer apposito, direi che il tutto risulta accessibile. Certo servono schede che facciano questo in HW, schede DX9.

Half Life 2
Per HL2 non mi sento di sbilanciarmi più di tanto, ma sembra che gli effetti DX9 siano stati usati per cose specifiche come l'acqua, al fine di alleggerire i punti critici ma per il resto non si vedono effetti e soluzioni che non siano già comparse nei vari demo che hanno accompagnato le schede video da due anni a questa parte, solo che qui hanno un senso. Se questa chiaccherata imprecisa e per nulla tecnica è servita a chiarire un poco le differenze tra i motori grafici DX8 e DX9, direi che non posso chiedere di più. In caso negativo, sappiate che ci sono valanghe di siti in inglese ma anche italiani che parlano dei singoli aspetti, ma il tempo e l'attenzione che richiedono sono moooooolto superiori a quelli richiesti per queste due paginette, e se non si è nel mestiere non so quanto convenga.

gik25
10-06-2003, 01:18
se avete qualcosa da aggiungere o rettificare comunicatemelo immediatamente :)

Simon82
10-06-2003, 07:00
Bestemmia su Half Life 2... ma avete visto il realismo delle scene in termini di illuminazione e colori? ;).. altro che innovazioni..

gik25
10-06-2003, 09:57
Originally posted by "Simon82"

Bestemmia su Half Life 2... ma avete visto il realismo delle scene in termini di illuminazione e colori? ;).. altro che innovazioni..

:p

Korn
10-06-2003, 11:04
puoi sottolieare anche che doom 3 non è un gioco direct x

gik25
10-06-2003, 11:09
Originally posted by "Korn"

puoi sottolieare anche che doom 3 non è un gioco direct x

c'è scritto

gik25
10-06-2003, 11:12
se andate sul sito (www.HyperReview.com) trovate le parti più interessanti sottolineate, non fatemi copiare anche le sottolineature

gik25
11-06-2003, 09:59
visto che non leggete perchè è lungo, vi posto i commenti entusiastici di chi ha letto: http://www.tgmonline.it/forum/index.php?t=msg&th=91397&rid=15379&S=21d48afa141cceaf0f9cae99e476a006&pl_view=&start=0#msg_893231


Datemi retta è veramente interessante (l'articolo non è mio) www.hyperreview.com

simone3dfx@libero.it
11-06-2003, 10:40
anche io ho letto l'articolo e non ho capito bene se Unreal 2 e full dx 7 o no e Half Life da quello che so è si full dx 8.1 ma usa anche per determinati parti dei giochi effetti dx 9.0

gik25
11-06-2003, 10:56
Originally posted by "simone3dfx@libero.it"

anche io ho letto l'articolo e non ho capito bene se Unreal 2 e full dx 7 o no e Half Life da quello che so è si full dx 8.1 ma usa anche per determinati parti dei giochi effetti dx 9.0

è quello che è scritto sull'articolo:

"Unreal 2 rappresenta al meglio le Direct X 8/8.1, Doom3 le (Open GL 2.0 con ottimizzazioni proprietarie, che grosso modo equivalgono alle) DX9 ed HL2? Bella domanda, da ciò che ho visto e letto in giro, “sembra” un DX 8.1 con i fiocchi, “sporcato” di DX9: un tramite ideale tra due generazioni differenti. "

Cioè Unreal 2 è DX8/8.1
HL2 dovrebbe essere DX8.1 "sporcato" (cioè utilizza per alcuni effetti) DX9

E doom 3 non è DX però come funzionalità potrebbe essere paragonato alle DX9

Verro
11-06-2003, 11:52
insomma ho capito che chi ha comprato schede dx8 (tipo la mia) per vederla sfruttata dai giochi ha buttato i soldi?? :rolleyes:

Hanamichi
11-06-2003, 12:12
ottimo articolo! :eek:

Korn
11-06-2003, 12:22
Originally posted by "Verro"

insomma ho capito che chi ha comprato schede dx8 (tipo la mia) per vederla sfruttata dai giochi ha buttato i soldi?? :rolleyes:beh la 8500 dire che è stato un ottimo acquisto...

Hanamichi
11-06-2003, 12:23
Originally posted by "Korn"

beh la 8500 dire che è stato un ottimo acquisto...

che vorresti dire? :rolleyes:

gik25
11-06-2003, 12:35
Originally posted by "Hanamichi"

ottimo articolo! :eek:

E il sito? che ve ne pare? :p

Verro
11-06-2003, 12:35
Originally posted by "Korn"

beh la 8500 dire che è stato un ottimo acquisto...

non lo è stato? :rolleyes: forse una 9800pro sarebbe stata meglio, ma magari 500€ me li dai tu..è ancora un ottima scheda in grado di far girare tutto (la 8500), però mi dà noia sapere che non usciranno giochi che la sfruttino appieno.. :rolleyes:

gik25
11-06-2003, 12:51
Io ho comprato la 8500le, un'ottimo acquisto, ma quanto può durare? beh era di fascia bassa già quando la comprai... non l'ho presa certo aspettando le DX9.

A settembre si cambia :)

Korn
11-06-2003, 13:06
Originally posted by "Hanamichi"



che vorresti dire? :rolleyes:quello che ho detto lol

Hanamichi
11-06-2003, 16:27
Originally posted by "Korn"

quello che ho detto lol

a me la 8500 mi ha dato nn poche soddisfazione all'inizio! :D
poi dopo 2 anni ha avuto il cambio... :rolleyes:

d@vide085
11-06-2003, 17:07
Gira voce che DoomIII si raccolto in una marea di CD.
Ma si può sapere quanti sono??? :confused: :confused: :confused:

MaBru
11-06-2003, 21:16
Originally posted by "gik25"

se avete qualcosa da aggiungere o rettificare comunicatemelo immediatamente :)

Doom3 è un gioco tecnologicamente 90% DX7, 5%DX8 e il rimanente 5% DX9.

Carmack ha usato gli shaders scrivendo la bellezza di 9 istruzioni. :eek:

UT2003 è un gioco 100% DX7. Me lo ha confermato Mark Poesch, Director of Technology alla Legend, in risposta ad una mia mail in cui chiedevo la stessa identica cosa. ;)

Ciao

gik25
11-06-2003, 21:24
Originally posted by "MaBru"



Doom3 è un gioco tecnologicamente 90% DX7, 5%DX8 e il rimanente 5% DX9.

Carmack ha usato gli shaders scrivendo la bellezza di 9 istruzioni. :eek:

UT2003 è un gioco 100% DX7. Me lo ha confermato Mark Poesch, Director of Technology alla Legend, in risposta ad una mia mail in cui chiedevo la stessa identica cosa. ;)

Ciao

Doom 3 è openGL non DirectX mi sa che già parti male...

100% DirectX 7???

Boh mi sa che hai capito male.

9 istruzioni??? ma hai mai scritto del codice?

Sei sicuro di quello che dici?

MaBru
11-06-2003, 21:38
Originally posted by "gik25"



Doom 3 è openGL non DirectX mi sa che già parti male...

Infatti ho scritto "tecnologicamente". Sai cos'è una metafora?

100% DirectX 7???

Boh mi sa che hai capito male.

E' perché non ho più la mail di Poesch perché ho dovuto formattare, altrimenti facevo un copia e incolla. Chi è la tua fonte invece? Non Poesch credo...

9 istruzioni??? ma hai mai scritto del codice?

Beccati questo link. Leggi il secondo post

http://www.beyond3d.com/forum/viewtopic.php?t=6125



Sei sicuro di quello che dici?

Hai ancora dubbi? ;)

Ciao

gik25
11-06-2003, 22:04
Originally posted by "MaBru"


Hai ancora dubbi? ;)

Ciao

Si molti.

Però potresti avere ragione: se Duke si fosse basato su dichiarazioni non fondate, allora potrebbe essere che tu abbia ragione.

Ma dovresti portare un'argomentazione un po' più completa: perchè non metti assieme un po' di pezzi e scrivi qualcosa di cui tu possa essere fiero?

simone3dfx@libero.it
11-06-2003, 22:08
allora Doom3 non sfrutterebbe se non in alcuni casi neanche l'architettura della Geforce3 e Half life è percaso dx 7 anche lui?io non ci capisco più niente.

MaBru
11-06-2003, 22:16
Originally posted by "gik25"



Si molti.

Però potresti avere ragione: se Duke si fosse basato su dichiarazioni non fondate, allora potrebbe essere che tu abbia ragione.

Ma dovresti portare un'argomentazione un po' più completa: perchè non metti assieme un po' di pezzi e scrivi qualcosa di cui tu possa essere fiero?

Lo stesso Carmack ha detto in una delle prime uscite pubbliche del gioco che il motore di Doom3 si basa tecnologicamente sulle features presenti nella primissima GeForce.

Stenciled shadow volumes, dot3 lighting, bumpmapping, cube maps, le colonne portanti del motore di Doom3, sono features che anche la mia Radeon 7500 (che è una scheda DX7) riesce a far girare (a 5fps però ;) )
Perciò

Per quanto riguarda il pezzo da scrivere non ho né il tempo né la voglia né tantomeno le conoscenze tecniche per farlo. Cerco solo di tenermi informato. Tutto qua.

Ciao

gik25
11-06-2003, 22:21
Originally posted by "MaBru"



Lo stesso Carmack ha detto in una delle prime uscite pubbliche del gioco che il motore di Doom3 si basa tecnologicamente sulle features presenti nella primissima GeForce.

Stenciled shadow volumes, dot3 lighting, bumpmapping, cube maps, le colonne portanti del motore di Doom3, sono features che anche la mia Radeon 7500 (che è una scheda DX7) riesce a far girare (a 5fps però ;) )
Perciò

Per quanto riguarda il pezzo da scrivere non ho né il tempo né la voglia né tantomeno le conoscenze tecniche per farlo. Cerco solo di tenermi informato. Tutto qua.

Ciao

Comunque è molto interessante quello che hai fatto notare: sebbene forse sia un esagerazione (una delle prime volte che si parlava di doom: in mesi e mesi il motore subisce dei cambiamenti) (9 righe ma lo dice un utente di un forum... a cui doom evidentemente non piace) però credo che tu abbia in buona parte ragione, se hai altri link postali.

Gohansupersaiyan4
11-06-2003, 22:35
Originally posted by "MaBru"



Lo stesso Carmack ha detto in una delle prime uscite pubbliche del gioco che il motore di Doom3 si basa tecnologicamente sulle features presenti nella primissima GeForce.



Stenciled shadow volumes, dot3 lighting, bumpmapping, cube maps, le colonne portanti del motore di Doom3, sono features che anche la mia Radeon 7500 (che è una scheda DX7) riesce a far girare (a 5fps però ;) )
Perciò



Ti sbagli il tipo di bump ottenuto con i pixel shaders è diverso da quello implementato nelle schede dx7...



Per quanto riguarda il pezzo da scrivere non ho né il tempo né la voglia né tantomeno le conoscenze tecniche per farlo. Cerco solo di tenermi informato. Tutto qua.

Ciao


Karmack ha ribadito benissimo che solo all' inizio ha iniziato a sperimentare con le schede dx7 ma appena gli sono arrivate quelle dx8 ha rifatto tutto e si è concentrato sugli shaders...non a caso, ha fatto vedere doom3 alla presentazione del geforce3...

Doom3 sfrutta pesantemente gli shaders...un gioco non è che può essere dx7 ma anche dx8...o usa le fixed function o usa gli shaders...sono cose diversissime....

Ciao !

Ciao !

gik25
11-06-2003, 22:36
l'articolo di cui parli è dell'11 giugno 2002 (cioè esattamente 1 anno fa (365 gg guarda la coincidenza :p))

Gohansupersaiyan4
11-06-2003, 22:42
Rispetto all' articolo unreal2 non usa nessuna feature delle dx8...o se la usa davvero non si nota...

Per doom3 :


http://www.bluesnews.com/plans/1/

Basta andare qua e leggere...

Doom has dropped support for vendor-specific vertex programs
(NV_vertex_program and EXT_vertex_shader), in favor of using
ARB_vertex_program for all rendering paths. This has been a pleasant thing to
do, and both ATI and Nvidia supported the move. The standardization process
for ARB_vertex_program was pretty drawn out and arduous, but in the end, it is
a just-plain-better API than either of the vendor specific ones that it
replaced. I fretted for a while over whether I should leave in support for
the older APIs for broader driver compatibility, but the final decision was
that we are going to require a modern driver for the game to run in the
advanced modes. Older drivers can still fall back to either the ARB or NV10
paths.

Se lo giochi con una scheda che è dx7, senza gli effetti ottenuti con gli shaders, non hai lo stesso gioco...basta vedere motogp o rallisport due giochi dx8 con una scheda dx8 è un altro pioaneta...


Ciao !

gik25
11-06-2003, 23:09
Originally posted by "Gohansupersaiyan4"



Ti sbagli il tipo di bump ottenuto con i pixel shaders è diverso da quello implementato nelle schede dx7...




Karmack ha ribadito benissimo che solo all' inizio ha iniziato a sperimentare con le schede dx7 ma appena gli sono arrivate quelle dx8 ha rifatto tutto e si è concentrato sugli shaders...non a caso, ha fatto vedere doom3 alla presentazione del geforce3...

Doom3 sfrutta pesantemente gli shaders...un gioco non è che può essere dx7 ma anche dx8...o usa le fixed function o usa gli shaders...sono cose diversissime....

Ciao !

Ciao !

Quindi aveva ragione Duke :)
a parte Unreal 2, il discorso su Doom 3 e gli shader è corretto?

Gohansupersaiyan4
11-06-2003, 23:18
Originally posted by "gik25"



Quindi aveva ragione Duke :)
a parte Unreal 2, il discorso su Doom 3 e gli shader è corretto?


Certo e ti dirò di più : di doom3 la stissa cosa poi la dicono anche su quel forum :"Doom3 has really low polycounts and relies mostly in per pixel lighting to give it its "good looks"....

Doom3 é un gioco che cerca di usare non troppi poligoni e risultare splendido attraverso gli effetti delle dx8 (o opengl2.0)...lo stesso approccio usato da halo2...ora, se Doom3 HA IL SUO ASPETTO GRAZIE AGLI SHADERS, se gli togli gli effetti che gli servono per apparire come lo vediamo, cosa ne rimane ? non di certo lo stesso gioco...


Ciao !

gik25
11-06-2003, 23:34
Originally posted by "Gohansupersaiyan4"




Certo e ti dirò di più : di doom3 la stissa cosa poi la dicono anche su quel forum :"Doom3 has really low polycounts and relies mostly in per pixel lighting to give it its "good looks"....

Doom3 é un gioco che cerca di usare non troppi poligoni e risultare splendido attraverso gli effetti delle dx8 (o opengl2.0)...lo stesso approccio usato da halo2...ora, se Doom3 HA IL SUO ASPETTO GRAZIE AGLI SHADERS, se gli togli gli effetti che gli servono per apparire come lo vediamo, cosa ne rimane ? non di certo lo stesso gioco...


Ciao !

Perchè non scrivi un articolo riassumendoci qualche nozione di directx, qualche info su Doom 3 e altre info che reputi interessanti.

Ti prego, siamo tutti interessatissimi

Mi

shambler1
12-06-2003, 04:49
che tu sappia, quali sono i costi di sviluppo di un engine come quello di Doom 3?

guidin
12-06-2003, 08:24
io so solo che per usare il motore di unreal tournament la epic chiedeva 500000$..

ps:bellissimo articolo, anche per chi come me è totalmente a digiuno in materia..

gik25
12-06-2003, 10:20
Originally posted by "shambler1"

che tu sappia, quali sono i costi di sviluppo di un engine come quello di Doom 3?

ti dico solo una cosa: il motore di quake 3 viene concesso in licenza a 250.000$, quello di unreal al momento in cui usci costava il doppio.
Sviluppare un motore da soli deve costare di più altrimenti l'offerta non sarebbe competitiva.

guidin
12-06-2003, 10:28
però se la id offriva l'engine di quake 3 a 250k$ allora a lei sarà costato di meno farlo..se no ci perde..oppure lo concedevano in licenza solo dopo aver realizzato il successo di quake 3 stesso?

guidin
12-06-2003, 10:32
Originally posted by "gik25"


Sviluppare un motore da soli deve costare di più altrimenti l'offerta non sarebbe competitiva.

non è detto..probabilmente potrebbe anche costare meno, solo che una software house di fronte alla necessità di dover affrontare il rischio di avere un engine mal fatto e perdere tempo e risorse per programmarlo decida di comprarlo già pronto anche se deve pagare di più.. è una scelta di make or buy..

gik25
12-06-2003, 10:36
Originally posted by "guidin"

però se la id offriva l'engine di quake 3 a 250k$ allora a lei sarà costato di meno farlo..se no ci perde..oppure lo concedevano in licenza solo dopo aver realizzato il successo di quake 3 stesso?

non solo lo concedevano dopo aver sfruttato il successo di quake, ma speravano che lo comprassero in molti (non solo 1).

Quello di Unreal ad esempio è stato acquistato da molti videogame (Nolf, DNF,ecc)

allmaster
12-06-2003, 11:56
ma la demo di doom3 è uscita?

shambler1
12-06-2003, 12:33
conosco il prezzo della licenza del trinity. volevo conoscere il costo di produzione di un engine come , appunto, quelli della ID.

gik25
12-06-2003, 12:43
Originally posted by "allmaster"

ma la demo di doom3 è uscita?

No però circola illegalmente una versione beta

gik25
12-06-2003, 12:49
Originally posted by "shambler1"

conosco il prezzo della licenza del trinity. volevo conoscere il costo di produzione di un engine come , appunto, quelli della ID.

beh purtroppo la parola "costo" in econonomia ha diversi significati:
se io lavoro per 10 anni e produco un engine fenomenale quanto ho pagato? 0€ segue che costo = 0€?

Esistono costi fissi e variabili, costi differenziali, ecc. ecc.

La domanda giusta sarebbe: quanto costerebbe assumere 6 persone per creare un motore tipo quello di Doom III?
Sono 6 ingegneri, lavorano 8 ore al giorno per 6-8 anni...

beh fai un po' tu...

Alla ID carmack i programmatori non costano niente: non hanno uno stipendio, prendono una percentuale sulle vendite dei prodotti. Soprattutto quelli come Carmack

_Xel_^^
12-06-2003, 13:04
"Unreal 2 rappresenta al meglio le Direct X 8/8.1

Ma per favore... -___-'




Ciau!

MaBru
12-06-2003, 19:13
Originally posted by "Gohansupersaiyan4"




Certo e ti dirò di più : di doom3 la stissa cosa poi la dicono anche su quel forum :"Doom3 has really low polycounts and relies mostly in per pixel lighting to give it its "good looks"....

Doom3 é un gioco che cerca di usare non troppi poligoni e risultare splendido attraverso gli effetti delle dx8 (o opengl2.0)...lo stesso approccio usato da halo2...ora, se Doom3 HA IL SUO ASPETTO GRAZIE AGLI SHADERS, se gli togli gli effetti che gli servono per apparire come lo vediamo, cosa ne rimane ? non di certo lo stesso gioco...

Su quel forum dicono: "Doom3 has really low polycounts and relies mostly in per pixel lighting to give it its "good looks". L'illuminazione per pixel si può ottenere anche senza shaders usando l'estensione gl_arb_texture_env_dot3 che è una fixed function. Avete mai provato la modification Tenebrae per il primo quake? Ha l'illuminazione per pixel ed il tutto gira (da schifo però) sullla mia Radeon 7500.

Ciao

norman900
12-06-2003, 19:38
bah tante parole per dimostrare che le schede video PC non sono sfruttate ...
Non si parla altro ormai da ere dimenticate ... :rolleyes: