Rendering fisicamente basato e ray tracing


11

Ho molta confusione e devo chiarire un po 'di terminologia e mettere insieme le conoscenze.
Se dico che un motore è un ray tracer (quindi utilizza l'algoritmo di ray tracing per il rendering della scena), è automaticamente un motore basato fisicamente? Voglio dire, il ray tracing è per definizione basato fisicamente o potrebbero esserci dei ray traccianti che non sono basati fisicamente? (e, simmetricamente, ci sono alcuni traccianti non raggi che sono basati fisicamente?)
Inoltre, è vero che "basato fisicamente" significa anche che "risolve l'equazione del trasporto della luce"?

Risposte:


16

"Physically based" non è un termine molto ben definito, quindi è difficile rispondere esattamente a questa domanda.

In generale, "basato fisicamente" si riferisce al fatto che l'algoritmo in questione deriva da principi basati fisicamente. Non è fisicamente corretto (perché non possiamo permettercelo) e di solito devono essere fatte alcune approssimazioni, ma è ben noto quali siano queste approssimazioni e idealmente c'è qualche intuizione sul tipo di errore che introduce.

Ciò è in contrasto con i modelli ad hoc, che di solito sono realizzati da un artista che osserva un effetto nella vita reale e cerca di scrivere uno shader o simile che in qualche modo imita il suo aspetto. Di solito i modelli ad hoc sono più semplici ed economici e tendono ad essere le prime soluzioni a presentare un determinato problema, ma non offrono alcuna visione particolare di ciò che sta realmente accadendo. È anche praticamente impossibile dire con che precisione un modello del genere sia in grado di riprodurre l'effetto che tenta di simulare.

Nel contesto del rendering, un "renderizzatore basato fisicamente" sarebbe quindi semplicemente qualcosa che rende un'immagine usando principi basati fisicamente, che è una classificazione molto vaga. Un ray tracciante non è intrinsecamente basato fisicamente, e la maggior parte dei primi ray traccianti utilizzava infatti modelli ad hoc per l'illuminazione e simili. In base alla mia esperienza personale, il "rendering basato fisicamente" in genere si riferiva alla risoluzione dell'equazione di rendering. Tuttavia, sembra che negli ultimi anni, molti motori di gioco abbiano rivendicato questo termine anche come "facciamo il risparmio energetico" o "non usiamo più il phong".

Quindi, in realtà, non esiste una classificazione rigida di cosa significhi "rendering basato fisicamente" e l'utilizzo del ray tracing da solo non rende un renderizzatore basato fisicamente. Nel rendering offline, questo termine viene ancora utilizzato principalmente per indicare i renderer che risolvono l'equazione di rendering, mentre nel rendering in tempo reale, si riferisce più probabilmente all'uso di modelli di microfacet o simili. Ma è possibile che il significato di questo termine cambierà nel corso degli anni.


3
Come suggerito da @BenediktBitterli "Rendering basato fisicamente" non è in realtà un sì o un no. Nel rendering, dobbiamo sempre bilanciare il realismo con i costi computazionali. Alcuni renderer avranno solo alcune funzionalità 'Physically Based', ad esempio Microfacet BRDF e target di rendering HDR. Mentre altri possono avere molti, ad esempio, BSDF completi, target di rendering a spettro completo, tracciamento della luce, luci di area, ecc.
RichieSams,

2

No, semplicemente:

  • Il rendering basato fisicamente non richiede raytracing. Si possono usare altri mezzi. *

  • Il raytracing può essere usato per fare altri effetti oltre al rendering basato fisicamente.

Il raytracing è spesso più semplice da implementare e da pensare. Pertanto è ampiamente utilizzato per il rendering basato fisicamente. Ma per lo stesso motivo molti render non realistici usano i trucchi raytracing per ottenere ciò di cui hanno bisogno.

* Personalmente ho giocato con FEM non strutturato per il rendering delle immagini

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.