Progressive Photon Mapping

This plugin implements the progressive photon mapping algorithm by Hachisuka et al. [14]. Progressive photonmapping is a variant of photonmapping that alternates between photon shooting and gathering passes that involve a relatively small (e.g. 250K) numbers of photons that are subsequently discarded.
This is done in a way such that the variance and bias of the resulting output vanish as the number of passes tends to infinity.The progressive nature of this method enables renderings with an effectively arbitrary number of photons without exhausting the available system memory.
The desired sample count specified in the sample generator configuration determines how many photon query points are created per pixel. It should not be set too high, since the rendering time is approximately proportional to this number. For good results, use between 2-4 samples along with the ldsampler. Once started, the rendering process continues indefinitely until it is manually stopped.

• Due to the data dependencies of this algorithm, the parallelization is limited to to the local machine (i.e. cluster-wide renderings are not implemented)
• This integrator does not handle participating media
• This integrator does not currently work with subsurface scattering models.


  • Max. path depth : integer
    • Specifies the longest path depth in the generated output image (where -1 corresponds to ∞). A value of 1 will only render directly visible light sources. 2 will lead to singlebounce (direct-only) illumination, and so on. (Default: -1 -> 24 @ blender)

  • Russian roulette starting depth : integer
    • Specifies the minimum path depth, after which the implementation will start to use the “russian roulette” path termination criterion. (Default: 5 -> 10 @ blender)

  • Work unit granularity : integer
    • Granularity of photon tracing work units for the purpose of parallelization (in # of shot particles) (Default: 0, i.e. decide automatically)

  • Photon Count : integer
    • Number of photons to be shot per iteration (Default: 250000)

  • Initial Radius : float
    • Initial radius of gather points inworld space units. (Default: 0, i.e. decide automatically)

  • Radius Alpha : float
    • Radius reduction parameter alpha fromthe paper (Default: 0.7)

  • maxPasses : integer (blender にはない?)
    • Maximum number of passes to render (where -1 corresponds to rendering until stopped manually). (Default: -1)

  • 最終更新:2014-05-20 15:30:38