Gather at hit point is performed by:
loop vicinity photons{
(check incident angle against surface normal to weed out wrong surface photons)
photon_contributions(color) += attenuation * photon_power
}
total_power(at point) = photon_contributions * density
density = 1 / 2 * pi * (furthest contributing photon distance)^2
attenuation = 1 - (photon contributing distance away)^2 / (furthest contributing photon distance)^2
Photons: 100,000
max_power: 3000
max_gather: 600 photons or 1 unit length
Photons: 50,000
max_power: 3000
max_gather: 400 photons or 1 unit length
max_gather: 200 photons or 1 unit length
Photons: 20,000
max_power: 3000
max_gather: 400 photons or 1 unit length
max_gather: 300 photons or 1 unit length
max_gather: 150 photons or 1 unit length
max_power: 1500
max_gather: 200 photons or 1 unit length
No comments:
Post a Comment