photonMapper Element Reference
Implementation of Henrik Wann Jensen's photon mapping algorithm. More...

Attributes | |
| unsigned int | noRenderThreads |
| Number of core rendering threads to use during rendering. | |
| unsigned int | noDirectSamples |
| Number of direct "shadow rays" to sample from area light sources during evaluation of direct illumination. | |
| generator | directSampleGenerator |
| generator | generator |
| generator to use to generate samples over the film plane | |
| unsigned int | diffuseNoGatherPhotons |
| Maximum number of diffuse photons to be gathered during KNN for irradiance estimates from the diffuse photon map. | |
| unsigned int | causticNoGatherPhotons |
| Maximum number of caustic photons to be gathered during KNN for irradiance estimates from the caustic photon map. | |
| ureal_t | diffuseGatherRadius |
| Maximum KNN search radius during irradiance estimates from the diffuse photon map. | |
| ureal_t | causticGatherRadius |
| Maximum KNN search radius during irradiance estimates from the caustic photon map. | |
| unsigned int | diffuseNoPhotons |
| Maximum number of (diffuse photons to shoot from emitters) and (photons to store in the diffuse photon map). | |
| unsigned int | causticNoPhotons |
| Maximum number of (caustic photons to shoot from emitters) and (photons to store in the caustic photon map). | |
Detailed Description
Implementation of Henrik Wann Jensen's photon mapping algorithm.Photon Mapping is a two-pass global illumination algorithm in which photons are first traced from light sources and stored in a global kd-tree called the photon map. Final gathering is then performed by tracing paths from the eye and using photons from the photon map to approximate irradiance at points.
- Note:
- Photon mapping parameters are generally especially scene-dependent.,Photon mapping treats diffuse and caustic paths separately, so many photonMapper-specific parameters have separate diffuse and caustic versions.,Photon mapping is a consistent estimator of Kajiya's rendering equation, in that its expected value converges to the true value only in the limit as the number of samples -> infinity.,See Jensen's book, "Realistic Image Synthesis Using Photon Mapping" (2001) for further details.
photonMapper corresponds to the underlying Milton class 'PhotonMapper.'
Attribute Documentation
| unsigned int photonMapper::noRenderThreads |
Number of core rendering threads to use during rendering.
Rendering in Milton is highly concurrent and is designed from the ground up to scale well with an increasing number of processors on the underlying machine. Choosing too few threads will drastically affect the performance of Milton by not taking advantage of all available resources. On the other hand, choosing too many threads may bottleneck the system and cause cache / memory thrashing from frequent time sharing between the threads across an insufficient number of available processors. A good rule of thumb is to choose noRenderThreads to be about 2 times the number of available processors. i.e., if you're on a quad-core machine, setting noRenderThreads to 8 or 10 will yield optional usage of the 4 available processors.
| type | unsigned integer |
| optional | true |
| default | 8 |
| unsigned int photonMapper::noDirectSamples |
Number of direct "shadow rays" to sample from area light sources during evaluation of direct illumination.
| type | unsigned integer |
| optional | true |
| default | 1 |
| type | generator |
| optional | true |
| default | jittered |
| unsigned int photonMapper::diffuseNoGatherPhotons |
| unsigned int photonMapper::causticNoGatherPhotons |
Maximum number of caustic photons to be gathered during KNN for irradiance estimates from the caustic photon map.
- Note:
- Because caustics are by their very nature a focusing event, you can generally set causticNoGatherPhotons to be much lower than diffuseNoGatherPhotons without compromising the quality of your render.
| type | unsigned integer |
| optional | true |
| default | 300 |
Maximum KNN search radius during irradiance estimates from the caustic photon map.
- Note:
- This parameter depends greatly on the scale of your scene.
| type | positive real scalar |
| optional | true |
| default | 1 |
| unsigned int photonMapper::diffuseNoPhotons |
| unsigned int photonMapper::causticNoPhotons |
Maximum number of (caustic photons to shoot from emitters) and (photons to store in the caustic photon map).
| type | unsigned integer |
| optional | true |
| default | 60000 |
Generated on 28 Feb 2009 for MiltonScenefileFormat by
1.5.6