Login

Benvenuto! Accedi o registrati.
Settembre 09, 2010, 08:58:07 pm
Nome utente: Password:
Accesso con nome utente, password e durata della sessione

Dimenticato la password?

Ultimi messaggi

Apple libera tutti
By: Davide Pasca
Oggi alle 04:14:59 pm

Forever again
By: Andrea Simone Basilio
Oggi alle 11:21:59 am

Softwarehouse italia...
By: Antonio Martini
Oggi alle 10:59:15 am

Mi presento!
By: Enrico Colombini
Oggi alle 09:36:36 am

Abbiamo scelto il la...
By: Valerio Bonfatti
Oggi alle 09:10:19 am

Fatturato aziende me...
By: Davide Pirola
Settembre 07, 2010, 07:37:30 pm

Professionalità
By: Manuele Bonanno
Settembre 07, 2010, 05:38:16 pm

GameCamp
By: Mauro Anceschi
Settembre 07, 2010, 09:15:51 am

Re: Pasca, Rage e iP...
By: Tommaso Checchi
Settembre 06, 2010, 01:58:48 pm

Final Freeway.. wait...
By: Davide Pasca
Settembre 05, 2010, 06:11:57 am

CaptainRon's Modules
Forum arrow Programmazione arrow Grafica 3D e fisica arrow textures textures
Pagine: [1] 2   Vai giù
  Stampa  
Autore Discussione: textures  (Letto 4355 volte)
Anonymous
Utente non iscritto
« inserita:: Giugno 17, 2004, 05:03:21 pm »

Lo so, probabilmente per molti di voi questi problemi sono facili da risolvere, ma tant'è...

Sapreste spiegarmi come far si che due zone di un terreno, ciascuna con una texture diversa ed adiacenti, non presentino uno sgradevole effetto di "taglio" che si vede da lontanissimo ed invece si mescolino gradualmente? Il procedimento dovrebbe essere automatizzato ed applicabile in real time.
Registrato
Marco Salvi
Intel - San Francisco


Karma: +8/-8
Messaggi: 664



Mostra profilo
« Risposta #1 inserita:: Giugno 17, 2004, 05:14:37 pm »

Citazione di: giuseppe maggiore
Lo so, probabilmente per molti di voi questi problemi sono facili da risolvere, ma tant'è...

Sapreste spiegarmi come far si che due zone di un terreno, ciascuna con una texture diversa ed adiacenti, non presentino uno sgradevole effetto di "taglio" che si vede da lontanissimo ed invece si mescolino gradualmente? Il procedimento dovrebbe essere automatizzato ed applicabile in real time.

Potresti texturare le zone adiacenti con entrambe le texture, interpolando (ad esempio linearmente)  tra le 2 con un fattore che dipende dalla distanza del vertice che stai trasformando da una delle 2 zone, il tutto normalizzato sulla distanza massima sulla quale vuoi che avvenga il mix tra le 2 texture.
Registrato

Isn't it enough to see that a garden is beautiful without having to believe that there are fairies at the bottom of it too? [Douglas Adams] [my blog]
Anonymous
Utente non iscritto
« Risposta #2 inserita:: Giugno 18, 2004, 10:28:28 am »

per risolvere il fatto che userei troppe volte gli stessi vertici, conviene preprocessarli? Il fatto è che non ho mai usato, nè conosco, processvertices (uso directx). Potresti scrivermi una pseudocodifichina?
molte grazie
Registrato
Antonino Perricone


Karma: +0/-0
Messaggi: 133



Mostra profilo
« Risposta #3 inserita:: Giugno 18, 2004, 11:22:01 am »

Citazione di: giuseppe maggiore
per risolvere il fatto che userei troppe volte gli stessi vertici, conviene preprocessarli? Il fatto è che non ho mai usato, nè conosco, processvertices (uso directx). Potresti scrivermi una pseudocodifichina?
molte grazie


non ho capito quali vertici useresti + volte...

cmq questo thread è fuori constesto "Tecniche 3D e realtime" si occupa di grafica non di programmazione.
Registrato
Antonino Perricone


Karma: +0/-0
Messaggi: 133



Mostra profilo
« Risposta #4 inserita:: Giugno 18, 2004, 01:07:04 pm »

non ho capito... ma ti occupi di politica?

e poi xke gameprog ti sta stretto? a me fà sentire tanto giovane Very Happy

cmq la risposta ke ti ha dato Mr.Salvi mi è sembrata perfetta e di facile comprenzione.
Anke  se personalmente sarei + sul multi pass ke sul multitexture, quindi dare trasparenza solo ad una delle due zone e disegnarla sopra l'altra.
Registrato
Paolo Congiu
Bonarcado Sardegna Italy


Karma: +0/-1
Messaggi: 182



Mostra profilo WWW
« Risposta #5 inserita:: Giugno 18, 2004, 01:39:06 pm »

Perche complicarsi la vita ad interpolare, utilizzare trasparenze, ecc. quando si può utilizzare con un buon effetto una terza texture che fa da mixaggio fra le due zone?
Registrato

Anonymous
Utente non iscritto
« Risposta #6 inserita:: Giugno 18, 2004, 04:10:47 pm »

(per perry)
la politica era riguardo ad una risposta che mi pareva un po'...infame...

I vertici di troppo sarebbero quelli delle zone di confine, renderizzate con un passo differente (uso infatti un vertex buffer ed un passo per ogni render state ed ogni index buffer. Aggiungere delle ulteriori zone di confine (aggiungendo un passo di rendering con due textures) significa ridisegnare tutti i vertici di bordo una volta per ogni materiale che li condivide. Per questo, volevo capire se conviene usare processvertices o ridisegnare qualche centinaio di vertici.

La terza texture però non mi garantisce che avrei l'effetto perfetto per ogni tipo di confine; e poi va memorizzata ed io ho già problemi di spazio. Inoltre, va bene solo per confini "dritti" o no?
Registrato
Marco Salvi
Intel - San Francisco


Karma: +8/-8
Messaggi: 664



Mostra profilo
« Risposta #7 inserita:: Giugno 19, 2004, 01:58:04 am »

Visto che i moderatori non hanno lockato il thread continuo a rispondere...

Non hai bisogno di fare 2 passate di rendering a meno che tu non debba suportare dell'hw veramente vecchio o roba tipo PS2.
Puoi tranquillamente impostare 2 texture stage (o scrivere un pixel shader..) con 2 texture differenti e usare come coefficiente di blending tra i due un valore calcolato in un vertex shader (o addirittura costante, precalcolato e salvato negli attributi di ogni vertice, ma mi pare uno spreco..)
Usare una terza texture per mixare le prime 2 mi pare una buona idea sono nel caso in cui tu voglia avere maggiore  liberta' mixando le 2 texture di base non solo sui confini tra le varie zone e non solo con un andamento lineare o cmq semplice, altrimenti ti conviene usare uno shader, andrai piu' veloce (specialmente sulle schede grafiche piu' vecchie) e risparmierai memoria.
A dire il vero potresti avere la stessa flessibilita' dell'approccio con 3 textures usandone solo 2 e senza scriver nessun vertex shader.
Basterebbe encodare nel canale alpha di una delle 2 texture da mixare il coefficiente di blending...certo che se pero' queste texture vengono mappate in maniera 'strana' o con tiling..sei di nuovo fregato, e quindi ritorni al punto di partenza.

ciao,
Marco
Registrato

Isn't it enough to see that a garden is beautiful without having to believe that there are fairies at the bottom of it too? [Douglas Adams] [my blog]
Utente non iscritto
« Risposta #8 inserita:: Giugno 19, 2004, 10:54:46 am »

Conosci questo sito http://www.vterrain.org/ ?
Penso sia un ottimo punto di partenza per vedere come sono stati risolti problemi come quello che dici usando gli approcci piu' vari.
In particolare guardati la sezione: Ground Detail - Detail / Blending.

Bai bai!
Registrato
Antonino Perricone


Karma: +0/-0
Messaggi: 133



Mostra profilo
« Risposta #9 inserita:: Giugno 21, 2004, 09:06:30 am »

Citazione di: Marco Salvi
Visto che i moderatori non hanno lockato il thread continuo a rispondere...

Non hai bisogno di fare 2 passate di rendering a meno che tu non debba suportare dell'hw veramente vecchio o roba tipo PS2.
Puoi tranquillamente impostare 2 texture stage (o scrivere un pixel shader..) con 2 texture differenti e usare come coefficiente di blending tra i due un valore calcolato in un vertex shader (o addirittura costante, precalcolato e salvato negli attributi di ogni vertice, ma mi pare uno spreco..)
Usare una terza texture per mixare le prime 2 mi pare una buona idea sono nel caso in cui tu voglia avere maggiore  liberta' mixando le 2 texture di base non solo sui confini tra le varie zone e non solo con un andamento lineare o cmq semplice, altrimenti ti conviene usare uno shader, andrai piu' veloce (specialmente sulle schede grafiche piu' vecchie) e risparmierai memoria.
A dire il vero potresti avere la stessa flessibilita' dell'approccio con 3 textures usandone solo 2 e senza scriver nessun vertex shader.
Basterebbe encodare nel canale alpha di una delle 2 texture da mixare il coefficiente di blending...certo che se pero' queste texture vengono mappate in maniera 'strana' o con tiling..sei di nuovo fregato, e quindi ritorni al punto di partenza.

ciao,
Marco


oh mamma... ma la presenza degli shader vi ha rammolito? sinceramente finké ci sono in commercio schede come la GeForce4MX ke non ha in HW neanke i vertex shader gli shader li vedo come una cosa in + ke si può fare ma non la base per i motori dei giochi e programmi per il grande pubblico...
Registrato
Emanuele Salvucci
Rome


Karma: +8/-22
Messaggi: 2359



Mostra profilo WWW
« Risposta #10 inserita:: Giugno 21, 2004, 09:32:29 am »

Citazione di: Antonino Perricone

oh mamma... ma la presenza degli shader vi ha rammolito? sinceramente finké ci sono in commercio schede come la GeForce4MX ke non ha in HW neanke i vertex shader gli shader li vedo come una cosa in + ke si può fare ma non la base per i motori dei giochi e programmi per il grande pubblico...


 Wowowo ...parliamo di una scheda che non trovi praticamente + in commercio... visto che con una manciata di euro di porti a casa una FX 5200... con vertex/pixel shaders ecc..
Oltretutto, solo le MX delle rispettive linee non li supportano...gli altri modelli della stessa linea si (GF4 Ti ad esempio).

..direi che ormai il supporto di schede senza shader e'diventato un caso eccezionale...a meno che non fai budget games.
Immagino che anche Doom3 supporti schede con pipeline fissa...ma della serie, trasforma poligoni -> renderizza texture colore...fine... ovvero, "tanto per supportarle"...  Laughing
Registrato

Emanuele Salvucci
Maya|Lightwave
Game Technical Artist
Lscript developer

www.forwardgames.com
Antonino Perricone


Karma: +0/-0
Messaggi: 133



Mostra profilo
« Risposta #11 inserita:: Giugno 21, 2004, 10:01:02 am »

Citazione di: Emanuele Salvucci
Citazione di: Antonino Perricone

oh mamma... ma la presenza degli shader vi ha rammolito? sinceramente finké ci sono in commercio schede come la GeForce4MX ke non ha in HW neanke i vertex shader gli shader li vedo come una cosa in + ke si può fare ma non la base per i motori dei giochi e programmi per il grande pubblico...


 Wowowo ...parliamo di una scheda che non trovi praticamente + in commercio... visto che con una manciata di euro di porti a casa una FX 5200... con vertex/pixel shaders ecc..
Oltretutto, solo le MX delle rispettive linee non li supportano...gli altri modelli della stessa linea si (GF4 Ti ad esempio).

..direi che ormai il supporto di schede senza shader e'diventato un caso eccezionale...a meno che non fai budget games.
Immagino che anche Doom3 supporti schede con pipeline fissa...ma della serie, trasforma poligoni -> renderizza texture colore...fine... ovvero, "tanto per supportarle"...  Laughing


Bhé non se hai provato una 5200, ma fà davvero pena...
Unreal2004 è ingiocabile.
Poi ci sono sempre le schede video dei portatili e quelle integrate nella scheda madre ke non supportano gli shader...  
Ripeto: L'uso degli shader non è ancora consigliabile per i prodotti commerciali
Registrato
Agostino Simonetta
London
Administrator
*****

Karma: +15/-5
Messaggi: 1063



Mostra profilo
« Risposta #12 inserita:: Giugno 21, 2004, 10:47:26 am »

Citazione di: Emanuele Salvucci
Citazione di: Antonino Perricone

oh mamma... ma la presenza degli shader vi ha rammolito? sinceramente finké ci sono in commercio schede come la GeForce4MX ke non ha in HW neanke i vertex shader gli shader li vedo come una cosa in + ke si può fare ma non la base per i motori dei giochi e programmi per il grande pubblico...


 Wowowo ...parliamo di una scheda che non trovi praticamente + in commercio... visto che con una manciata di euro di porti a casa una FX 5200... con vertex/pixel shaders ecc..
Oltretutto, solo le MX delle rispettive linee non li supportano...gli altri modelli della stessa linea si (GF4 Ti ad esempio).

..direi che ormai il supporto di schede senza shader e'diventato un caso eccezionale...a meno che non fai budget games.
Immagino che anche Doom3 supporti schede con pipeline fissa...ma della serie, trasforma poligoni -> renderizza texture colore...fine... ovvero, "tanto per supportarle"...  Laughing


Spiacente Emanuele, i publishers a tutt'oggi richiedono il supporto di schede molto piu vecchie di quanto tu possa pensare.
GForce 2 e' ancora obbligatoria per la maggior parte dei giochi.

E parlo x esperienza personale  Evil or Very Mad
Registrato

Agostino Simonetta
European Development Account Manager
Sony Computer Entertainment Europe Limited
Emanuele Salvucci
Rome


Karma: +8/-22
Messaggi: 2359



Mostra profilo WWW
« Risposta #13 inserita:: Giugno 21, 2004, 11:41:44 am »

Ripeto...certo che le schede a pipeline fissa sono supportate... ma non sara'certo lo stesso "visual"...  Wink

Doom3 esce tra poco...ed e'tutto un altro gioco se lo fai girare su una GeForce2...gira, ma non e'Doom3...
...se il punto e'questo, allora si, siamo tutti d'accordo... questi giochi girano anche con la GeForce1 se vuoi!  Very Happy
Registrato

Emanuele Salvucci
Maya|Lightwave
Game Technical Artist
Lscript developer

www.forwardgames.com
Emanuele Salvucci
Rome


Karma: +8/-22
Messaggi: 2359



Mostra profilo WWW
« Risposta #14 inserita:: Giugno 21, 2004, 11:52:29 am »

Citazione di: Antonino Perricone
Bhé non se hai provato una 5200, ma fà davvero pena...
Unreal2004 è ingiocabile.
Poi ci sono sempre le schede video dei portatili e quelle integrate nella scheda madre ke non supportano gli shader...  
Ripeto: L'uso degli shader non è ancora consigliabile per i prodotti commerciali


allora, secondo me, dipende tutto dal target de gioco. A seconda del gioco ci sono delle priorita' "grafiche".
Fermo restando che supportare le schede vecchie non ci vuole praticamente nulla, e quindi sono cmq supportate, rimane una decisione fondamentale: il gioco necessita di vertex e pixel shaders?

Se si, si basa l'engine grafico prima su VS/PS...e poi si aggiunge il supporto per pipeline fisse...altrimenti non si usano shaders e tutto apposto.

Se si decide di fare un gioco con VS/PS si creano i contenuti grafici in base a quelle specifiche...contenuti che poi possono essere piu' o meno scalabili verso il basso per schede senza shaders (di solito la complessita'delle mesh...se si utilizzano mesh progressive e lod dinamici).
Se prendi un gioco che utilizza normal maps per esempio, le textures di colore (diffuse) non sono certamente paragonabili a quelle che utilizzeresti per un gioco senza shaders...sono molto meno dettagliate.
Ovviamente se andrai a giocare un gioco del genere su una GeForce1 o 2...sara' molto meno "bello" di un gioco appositamente pensato per queste linee di schede.

Mentre e'possibile scalare le capacita' di rendering dell'engine, non e'possibile creare doppi contenuti grafici... (leggi, e' impensabilmente dispendioso e inutile).

Quindi, con i giochi che usciranno a breve ed i successivi la questione sara'questa: "o lo giochi come lo abbiamo pensato, o vedrai tutt'altra cosa".

...ci saranno sempre giochi basati sull'engine di Quake3...ma inizieranno anche a comparire quelli basati sull'engine di Doom3...quindi tempo un paio d'anni, su per giu...  e questa situazione sara'abbastanza diffusa. Wink
Registrato

Emanuele Salvucci
Maya|Lightwave
Game Technical Artist
Lscript developer

www.forwardgames.com
Pagine: [1] 2   Vai su
  Stampa  
 
Vai a:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC XHTML 1.0 valido! CSS valido!
Pagina creata in 0.138 secondi con 18 interrogazioni al database.