The PMC Kernel is a custom mutating unbiased kernel designed specifically for GPU rendering. Rendering with PMC creates physically accurate lighting and caustic effects and is generally produces the highest quality result but can also take the most time to render depending on the scene. Figure 1 shows the PMC settings in the OctaneRender settings.
Figure 1: The PMC settings in the OctaneRender tab.
PMC Kernel Parameters
Sets the maximum number of samples per pixel before the rendering process stops. The higher the number of samples per pixel, the cleaner the render. There is no rule as to how many samples per pixel are required for a good render, it is subjective and may vary depending on the content and complexity of the scene being rendered.
Sets the filter size in terms of pixels. This can improve aliasing artifacts in the render. However, if the filter is set too high, the image can become blurry.
Is the distance between the geometry and the light ray when calculating ray intersections for lighting and shadowing. Larger values push rays away from the geometry surface. Lower values are more accurate, but can cause artifacts on large or distant objects. Ray Epsilon is similar to raytracing bias in other rendering engines. Adjust Ray Epsilon to reduce artifacts in large scale scenes.
This option removes background images or colors created by the SunSky environment node from the rendered image while not affecting any lighting cast by the environment. This can be useful if the user wants to composite the render over another image and does not want the background to be present. Note that objects appearing in the RGB channels will have a bleeding edge which may appear as noise artifacts however these edges are not included in the alpha channel itself.
Allows any object with transparency (specular materials, materials with opacity settings and alpha channels) to cast a shadow accordingly instead of behaving as a solid object.
Max diffuse depth
The maximum number of time a ray can bounce/reflect/refract off of a diffuse or very rough surface. Higher values mean higher render times but more realistic results. For outdoor renders a good setting is around 4. For lighting interiors with natural light (the sun and the sky) you will need higher settings such as 8 or more. In the real world the maximum diffuse bounces would not exceed 16, it is possible to use a value higher than 16 but this is usually not necessary.
Max specular depth
Controls the number of time a ray can be refracted before dying. Higher numbers mean higher render times but more color bleeding and more details in transparent materials. Low numbers can introduce artifacts or turn some refractions into pure black.
Specifies how long the kernel investigates good paths before it tries to find a new path. Low values can create a noisy image while larger values can create a splotchy image.
Direct light importance
Causes the kernel to prioritize ray tracing paths with indirect light. For example, imagine sunlight through a window that creates a bright spot on the floor. When direct light importance is set to a value of 1, the kernel will sample this area more and reduce noise around the bright spot. If the direct light importance is reduced, the PMC kernel reduces its efforts to sample that bright area and focuses more on problematic areas that may be harder to render such as areas with more indirect lighting.
Controls the “bias” of the render. By reducing the value, the result will be more biased, but the render time will be shorter. In rendering terminology biased renders introduce slight blurring and other less physically accurate computational techniques in order to reduce render time.
is used to reduce noise in caustic light patterns. High values may result is softness in the caustic patterns (see Figure 2)
Figure 2: A comparison of caustic light patterns rendered with different Caustic blur settings.
GI Clamp clamps the contribution for each path to the specified value. By reducing the GI Clamp value, you can reduce the amount of “fireflies” caused by sparse but very strongly contributing paths. Reducing this value reduces noise by removing energy (Figure 3).
Figure 3: A comparison renders with different GI Clamp settings
Controls how many samples are calculated in parallel. Smaller values require less memory to store the samples state but may cause the render to be a bit slower. High values require more memory but can reduce render time. The change in performance depends on the scene and the GPU architecture.
Power high values increase render speed but may cause higher noise in dark areas.
Is used in conjunction with the Alpha Channel setting. It allows the background to be visible in the rendered image while at the same time, keeping the alpha channel.
Work Chunk Size
Is number of work blocks done per kernel run. Increasing this value also increases the memory requirement on the system but does not affect memory usage and may increase render speed.