Qual è la tendenza / metodo più recente per il rendering del terreno? [chiuso]


49

L'ultima volta che ho eseguito il check-in sul rendering del terreno, ROAM è stata la nuova novità. Sì, è stato tanto tempo fa. ROAM mi è piaciuto molto, però, perché era estremamente semplice da programmare e ha dato risultati abbastanza decenti. Immagino che la tecnologia sia migliorata un po 'adesso. Quali sono i metodi più popolari per il rendering del terreno in questi giorni?


Buona domanda! Lo stavo riflettendo da solo di recente e ho pensato che un renderizzatore di terreno moderno si sarebbe concentrato maggiormente sul fare in modo che la GPU facesse il più possibile il lavoro piuttosto che minimizzare il conteggio dei poli come ha fatto ROAM. La risposta dipenderebbe anche dalle capacità dell'hardware. Ad esempio, su DirectX11 / OpenGL4 potresti generare la geometria sulla GPU, ma sulle GPU più vecchie dovresti fornire buffer di vertici per disegnare, ma questi potrebbero essere riutilizzati poiché lo spostamento dell'altezza potrebbe essere fatto in uno shader di vertici.
U62,

Risposte:


17

Dovresti assolutamente dare un'occhiata alla presentazione di Halo Wars GDC, " The Terrain of Next-Gen ". Discute l'utilizzo dello spostamento del campo vettoriale completo anziché lo spostamento del campo di altezza semplice.

Per qualcosa di un po 'meno rivoluzionario, magari dai un'occhiata alle clipmap della geometria. C'è un buon articolo in GPU Gems 2 qui .


1
ottimo collegamento, grazie!
Dave O.

Quella presentazione GDC è stata molto istruttiva sull'argomento, grazie!
Dream Lane,

lo spostamento del campo vettoriale sembra incredibile
Daniel Little il

2
Attenzione, il clipmapping della geometria è brevettato. Questo può o non può importare, a seconda di cosa hai intenzione di fare con il tuo codice. gamedev.net/topic/…
Brynn Mahsman,

11

Per uno, la pipeline della geometria deve essere il più semplice possibile e spingere semplicemente la geometria nella GPU con una gestione LOD abbastanza semplice.

Ho fatto una presentazione a Siggraph 2007 intitolata Terrain Rendering in Frostbite utilizzando Procedural Shader Splatting che illustra in dettaglio come gestiamo sia la geometria LOD sia la struttura generale e l'ombreggiatura del terreno. Usiamo una combinazione di shader semi-procedurali in più livelli. Questo è anche trattato in modo più dettagliato nelle note del corso per il discorso ( pdf ).


5

Bene, in realtà la tendenza più recente è quella di utilizzare il raytracing in un ottuso di voxel scarso per il terreno in combinazione con la rasterizzazione delle maglie triangolari per tutto il resto. Il software id attualmente lavora su questa tecnologia per implementarla nel loro prossimo motore.


2

Proprio come un avvertimento amichevole, qualsiasi googling sull'argomento ti farà senza dubbio 100.000 visite su ROAM e tecnologie correlate (ROAM, Geo mip-mapping, ecc.). Tenere lontano da loro, sono molto legati alla CPU.

Ho letto qua e là che la "forza bruta" può effettivamente funzionare; e ne ho esperienza personale lavorando meglio di qualsiasi tecnologia ROAM che ho implementato. Semplicemente dividere il paesaggio e eliminarne alcune parti ha funzionato alla perfezione; come soluzione di prova di concetto.

I sistemi semplici sono sempre la migliore prima implementazione. Se non disponi di un motore paesaggistico interno, creane uno semplice, continua con il resto del gioco e torna ad altre idee in seguito. I paesaggi sono divertenti da implementare (perché ottieni risultati così vari per modifiche molto semplici) e uno sviluppatore tipico sarà distratto da questo puzzle per troppo tempo.

Una volta che hai preparato il tuo gioco; Neverender ha ragione.


2

In alternativa al clipmapping della geometria, il LOD in pezzi è una tecnica comunemente usata che alimenta in modo efficiente la pipeline grafica e non è brevettata come il clipmapping della geometria. È probabilmente usato nella maggior parte dei moderni globi virtuali.

Esistono tecniche più moderne che utilizzano appieno le GPU di oggi inviando solo trame di altezza e colore alla GPU e costruendo la geometria del terreno tramite shader (vedi Bruneton e Neyret 2008 ), ma tieni presente che mentre questo è veloce, significa anche che non t hanno geometria del terreno sulla CPU per la fisica e la simulazione. C'è anche una tecnica moderna che cambia dinamicamente tra rasterizzazione e ray casting a seconda di ciò che è più efficiente (vedi Dick e 2010 ).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.