From Wakapon
Jump to: navigation, search
Line 4: Line 4:
  
 
<math>
 
<math>
E_r(x) = \int_\Omega L_i(\omega_i) (n.\omega_i) \, d\omega_i
+
E_r(x) = \int_\Omega dE_i(c,\omega_i) = \int_\Omega L_i(c,\omega_i) (n.\omega_i) \, d\omega_i
 
</math>
 
</math>
  
Line 14: Line 14:
  
 
<math>f_r(x,\omega_o,\omega_i) = \frac{dL_r(x,\omega_o)}{dE_i(x,\omega_i)}</math>
 
<math>f_r(x,\omega_o,\omega_i) = \frac{dL_r(x,\omega_o)}{dE_i(x,\omega_i)}</math>
 +
 +
From the first equation of the irradiance, we can deduce that:
 +
 +
<math>dE_i(c,\omega_i) = L_i(c,\omega_i) (n.\omega_i) d\omega_i</math>
 +
(note that we simply removed the integral signs to get this)
 +
 +
We can then rewrite the BRDF as:
 +
 +
<math>f_r(x,\omega_o,\omega_i) = \frac{dL_r(x,\omega_o)}{L_i(c,\omega_i) (n.\omega_i) d\omega_i}</math>
 +
  
 
It can be seen as the infinitesimal amount of reflected radiance by the infinitesimal amount of incoming '''ir'''radiance.
 
It can be seen as the infinitesimal amount of reflected radiance by the infinitesimal amount of incoming '''ir'''radiance.
We thus realize it's defined as an infinitesimal quantity (so we need to integrate it to obtain the final result) in <math>sr^{-1}</math> units.
+
We thus realize it's defined as an infinitesimal quantity (so we need to integrate it to obtain the final result) and it's expressed in <math>sr^{-1}</math> units.
  
  

Revision as of 18:31, 25 December 2012

Characteristics of a BRDF

As I see it, integration of radiance times dot(n,l) yields the irradiance (<math>W.m^{-2}</math>):

<math> E_r(x) = \int_\Omega dE_i(c,\omega_i) = \int_\Omega L_i(c,\omega_i) (n.\omega_i) \, d\omega_i </math>

But when we inject the BRDF into the integral, we obtain a new radiance (<math>W.m^{-2}.sr^{-1}</math>):

<math>L_r(x,\omega_o) = \int_\Omega f_r(x,\omega_o,\omega_i) L_i(\omega_i) (n.\omega_i) \, d\omega_i</math>

Indeed, the expression of the BRDF (<math>sr^{-1}</math>) is:

<math>f_r(x,\omega_o,\omega_i) = \frac{dL_r(x,\omega_o)}{dE_i(x,\omega_i)}</math>

From the first equation of the irradiance, we can deduce that:

<math>dE_i(c,\omega_i) = L_i(c,\omega_i) (n.\omega_i) d\omega_i</math> (note that we simply removed the integral signs to get this)

We can then rewrite the BRDF as:

<math>f_r(x,\omega_o,\omega_i) = \frac{dL_r(x,\omega_o)}{L_i(c,\omega_i) (n.\omega_i) d\omega_i}</math>


It can be seen as the infinitesimal amount of reflected radiance by the infinitesimal amount of incoming irradiance. We thus realize it's defined as an infinitesimal quantity (so we need to integrate it to obtain the final result) and it's expressed in <math>sr^{-1}</math> units.


The fundamental characteristics of a real material BRDf are:

  • Reciprocity (a.k.a. Helmoltz principle), guaranteeing the BRDF returns the same value if <math>\omega_o</math> and <math>\omega_i</math> are reversed (i.e. view is swapped with light).
  • Energy conservation, guaranteeing the total amount of reflected light is less or equal to the amount of incoming light.


Sources

I've been reading interesting papers from the Siggraph 2012 talk about Practical Physically Based Shading in Film and Game Production which is available here

Some ideas are worth mentioning.


S4.gif