PMC Kernel

PMC is a custom mutating unbiased kernel written for GPUs. It allows for complex caustics and lighting to be resolved

Figure 1: shows the PMC settings in the Node Inspector.

The PMC Kernel Parameters:

Max Samples - 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.

DiffuseAmount of diffusion, or the reflection of light photons at different angles from an uneven or granular surface. Used for dull, non-reflecting materials or mesh emitters. Depth - The maximum number of times 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.

SpecularAmount of specular reflection, or the mirror-like reflection of light photons at the same angle. Used for transparent materials such as glass and water. 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.

Ray Epsilon -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.
Refer to section Rendering → Adjusting Ray Epsilon.

Filter Size -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.

Alpha Shadows -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.

Caustic Blur -Used to reduce noise in caustic light patterns. High values may result is softness in the caustic patterns (see Figure 2)

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).

Irradiance mode -This renders the first surface as a white diffuse material. Irradiance mode works similar to clay mode however it is only applied to the first bounce. It disables the bump channel and makes samples that are blocked by back faces transparent.

Volume Step Length -This is the step length that is used for marching through volumes.

Alpha ChannelA greyscale image used to determine which areas of a texture map are opaque and which areas are transparent. -This option removes background images or colors created by the Sun Sky environment node from the rendered image while not affecting any lighting cast by the environment. This can be useful if you want 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.

Keep Environment - 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.

Light -This section provides options to use the Light Linking And Light Exclusion capabilities of Octane and the AI Light lighting algorithm in Octane v4 for light sampling in scenes with complex lighting. For more information about the AI Light algorithm and its attributes, refer to AI Light in this documentation.

Path Termination Power -This parameter provides a system where users can tweak samples/second vs. convergence (how fast noise vanishes). Increasing this value will cause the kernels to keep paths shorter and spend less time on dark areas (which means they stay noisy longer) but may increase samples/second. Reducing this value will cause kernels to trace longer paths on average and spend more time on dark areas. In short, high values increases the render speed but may lead to higher noise in dark areas.

Exploration Strength -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.

Max rejects -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.

Parallelism -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 GPUThe GPU is responsible for displaying graphical elements on a computer display. The GPU plays a key role in the Octane rendering process as the CUDA cores are utilized during the rendering process. architecture.

Work Chunk Size -The number of work blocks (of 512K samples each) done per kernel run. Increasing this value increases the memory requirement on the system but does not affect memory usage and may increase render speed.

Toon Shadow Ambient -This is the ambient modifier of Toon Shadowing.