Jump to content
bn-top

Prepass


Luca Francy Mazzau
 Share

Recommended Posts

bn-top

Ciao Luca, quello che viene definito prepass, altro non è che il calcolo della Irradiance Map ( ovvero il calcolo dei rimbalzi secondari della luce ) e serve per "ricostruire" la soluzione di global illumination finale. Poichè con l'utilizzo classico degli algoritmi light cache ( primary bounces ) + irradiance map ( secondary bounces ) VRay esegue una sorta di approsimazione della soluzione finale per diminuire i tempi di calcolo.

Iraddiance Map esegue un calcolo approssimativo riducendo la risoluzione dell'immagine originale.

 

Supponi di avere: 

risoluzione output immagine 800x600px 

IM min rate = -3

IM max rate = -1

 

L'algoritmo di IM esegue esattamente 3 passaggi ( o prepass ) alla risoluzione di:

 

prepass 1: 800x600 / 2 = 266x200px / 2 = 133x100px / 2 = 66x50px ( ovvero dimezza la risoluzione n volte, dove n è uguale al valore min rate, cioè 3 )

prepass 2: 800x600px / 2 = 266x200px = 133x100px  ( ovvero dimezza la risoluzione n volte, dove n è uguale 2 )

prepass 3: 800x600 / 2 = 400x300px  ( ovvero dimezza la risoluzione n volte, dove n è uguale al valore max rate, cioè -1 )

 

 

con max rate = 0 la GI è calcolata con la risoluzione originale dell'output di render.

 

Piuttosto che impostare un min rate = 0 sarebbe buona pratica impostare sempre un valore < 0 in quanto il calcolo risulta molto più veloce a mano a mano che i prepass vengono elaborati e le informazioni vengono aggiunte ad ogni pass, laddove necessarie.

In sostanza ad ogni iterazione quindi, IM rifinisce ed aggiunge informazioni alla soluzione di global illumination.

 

Per test render i miei valori sono solitamente:

 

min rate = -3 max rate = -2

subdivisons = 64 interpolation samples = 24

 

Per render finali:

min rate = -3 max rate = -1

subdivisons = 150 interpolation samples = 50

 

Ovviamente i valori sono soggetti a variazioni a seconda dello scenario in questione. 

La guida di VRay spiega dettagliatamente tutto quello che sta dietro a questo alcoritmo.

 

 

 

 

Link to comment
Share on other sites

1 ora fa, Andrea Marchetto ha scritto:

Ciao Luca, quello che viene definito prepass, altro non è che il calcolo della Irradiance Map ( ovvero il calcolo dei rimbalzi secondari della luce ) e serve per "ricostruire" la soluzione di global illumination finale. Poichè con l'utilizzo classico degli algoritmi light cache ( primary bounces ) + irradiance map ( secondary bounces ) VRay esegue una sorta di approsimazione della soluzione finale per diminuire i tempi di calcolo.

Iraddiance Map esegue un calcolo approssimativo riducendo la risoluzione dell'immagine originale.

 

Supponi di avere: 

risoluzione output immagine 800x600px 

IM min rate = -3

IM max rate = -1

 

L'algoritmo di IM esegue esattamente 3 passaggi ( o prepass ) alla risoluzione di:

 

prepass 1: 800x600 / 2 = 266x200px / 2 = 133x100px / 2 = 66x50px ( ovvero dimezza la risoluzione n volte, dove n è uguale al valore min rate, cioè 3 )

prepass 2: 800x600px / 2 = 266x200px = 133x100px  ( ovvero dimezza la risoluzione n volte, dove n è uguale 2 )

prepass 3: 800x600 / 2 = 400x300px  ( ovvero dimezza la risoluzione n volte, dove n è uguale al valore max rate, cioè -1 )

 

 

con max rate = 0 la GI è calcolata con la risoluzione originale dell'output di render.

 

Piuttosto che impostare un min rate = 0 sarebbe buona pratica impostare sempre un valore < 0 in quanto il calcolo risulta molto più veloce a mano a mano che i prepass vengono elaborati e le informazioni vengono aggiunte ad ogni pass, laddove necessarie.

In sostanza ad ogni iterazione quindi, IM rifinisce ed aggiunge informazioni alla soluzione di global illumination.

 

Per test render i miei valori sono solitamente:

 

min rate = -3 max rate = -2

subdivisons = 64 interpolation samples = 24

 

Per render finali:

min rate = -3 max rate = -1

subdivisons = 150 interpolation samples = 50

 

Ovviamente i valori sono soggetti a variazioni a seconda dello scenario in questione. 

La guida di VRay spiega dettagliatamente tutto quello che sta dietro a questo alcoritmo.

 

 

 

 

grazie mille sei stato piu che esaustivo mi hai tolto il mio dubbio :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...