Mappe derivate rispetto allo spazio tangente Mappe normali


11

Ho scoperto che alcuni motori utilizzano mappe derivate anziché mappe normali dello spazio tangente .

Dopo alcune letture, sembra essere un modo davvero fantastico di sostituire le normali dello spazio tangente ma ci sono alcuni svantaggi nel usarle? Perché continuare a usare le normali dello spazio tangente?

È possibile confrontare sia con vantaggio che con svantaggio?


Esistono diversi blog che parlano di derivati ​​e sarebbe bello avere un feedback da parte di persone che li hanno implementati nel loro motore di produzione e perché scelgono quel metodo.
MaT

2
Uno dei principali fattori per cui le cose non vengono immediatamente adottate è l'inerzia e che la soluzione esistente è abbastanza buona.
maniaco del cricchetto

Risposte:


4

Dopo alcune ricerche e alcune risposte di professionisti ecco la mia conclusione.

Professionisti

  • Non richiedono tangenti o binormali. Meno interpolatori.
  • Sono necessari solo due canali. meno memoria di trama.
  • Non soffrire di cuciture tangenti.
  • Può essere miscelato utilizzando la miscelazione alfa, senza rinormalizzazione.
  • Meno memoria mesh: non è necessario memorizzare un vettore tangente.
  • Implementazione rapida.

Contro

  • Più ALU
  • Meno flessibile. Una mappa normale può rappresentare qualsiasi mappa derivata, ma non è vero il contrario. Ad esempio, i bordi taglienti possono essere difficili da rappresentare.

Quindi, questo è un sacco di vantaggi rispetto ai contro. Ma il problema principale è che non è uno standard industriale.
Non ci sono quasi strumenti per la creazione di contenuti né il know-how dell'artista.

Ecco una citazione di Bart Wronski che illustra bene lo stato attuale delle mappe derivate:

Purtroppo nella vita / tecnologia non sempre la migliore soluzione vince / nemmeno si merita attenzione ... Si tratta più di standard e inerzia.

Se sei interessato a saperne di più sulle mappe derivate, ecco alcuni articoli interessanti.

Se ho dimenticato qualcosa o se non sei d'accordo, sentiti libero di dire nei commenti, sarei felice di migliorare questa risposta.


Alcuni dei tuoi professionisti sembrano non utilizzare lo spazio tangente precompilato (ovvero derivare lo spazio tangente dai derivati ​​UV per pixel), che AFAIK è una scelta di progettazione separata, indipendente dalla scelta delle mappe derivate rispetto alle mappe normali.
Nathan Reed,

Grazie per il commento @NathanReed Stai parlando del fatto di calcolare tangenti e binormali? Potresti dirmi di più sullo spazio tangente precompilato?
MaT

1

Suppongo che tu stia utilizzando derivati ​​della mappa di altezza pre-calcolati piuttosto che calcolarli al volo (per i dettagli vedi questo post sul blog di Mikkelsen). Se dobbiamo fornire derivati ​​di altezza pre-calcolati, allora dobbiamo fornire due canali, proprio come una normale mappa. Si potrebbe sostenere che la mappatura derivata non richiede la presenza di un attributo di vertice tangente come la normale mappatura, ma le operazioni di differenziazione aggiuntive sulla mappa di altezza annullano in qualche modo quel guadagno in termini di prestazioni. Le mappe derivate sono un concetto interessante, ma alla fine non penso che siano significativamente migliori rispetto alla normale mappatura dal punto di vista delle prestazioni (anche se concettualmente concordo sul fatto che le mappe derivate sono più facili da lavorare perché non abbiamo a che fare con con spazio tangente).

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.