Extra Sampling


Image courtesy of Quentin Chaillet (www.qchaillet.com)

 

Broadly speaking, to render a scene, Maxwell casts rays to all pixels in the image (considering the camera sensor as a whole). But very often, the noise ends up being concentrated in certain areas, and so sometimes it would be useful to focus the rays only on those areas selected by the user. Very often the render looks generally fine except for those parts where, due their particular lighting and material characteristics, they are still noisy and need more rendering. So instead of continuing to render the whole frame (which will require rendering effort in areas that are already clean), you can put all the render power into refining specifially areas that you choose. This is when the Extra Sampling feature can help. With this feature, you can define an area to be rendered to a higher Sampling Level than the general frame, so you can distribute the rendering effort on your scene in a smarter way and save a huge amount of time, optimizing the render process as it is refining only the areas of your choice. In fact, the saving in time is directly related to the proportion of pixels sampled in the mask on the global frame. 

 

Defining a sampling zone

Defining a custom render area

The process works in fact as an interlocking of two render processes: firstly the full frame render at a specific Sampling Level, and once this is finished, another render process starts in the areas defined by the user, to achieve a higher Sampling Level only in those areas. The sampling area can even be generated during the render process itself, becoming a very powerful and automatic process. To define the sampling area Maxwell can use:

  • Bitmap, feed with an existing black and white mask in any image format, manually painted or, more frequently, generated from an external channel export.
  • Alpha, use the scene Alpha channel obtained during the full frame process.
  • Custom Alpha, use any Custom Alpha channel from object, material or even groups of objects and materials defined on the scene and obtained during the full frame process.

When using the Alpha or a Custom Alpha, Maxwell takes the channel from the full frame step at its final Sampling Level, and so obviously the higher the Sampling Level reached on the full frame step, the better the Alpha channel definition will be. We estimate that around Sampling Level 6 normally creates alpha channels good enough to be used as render masks.

As this feature allows you to focus the render effort in those areas you specifically want to get cleaner, this workflow represents an interesting optimization and can mean significant time savings on renders where the noise is concentrated on an area (dark corners, materials that are hard to clean like SSS...). 

Setting a render with selective sampling areas is as easy as follows: 

  1. Set the global Sampling Level or Time Limit as usual for the full frame step (a)
  2. Enable the Extra Sampling feature and set the new Sampling Level for the selected area (b) and the mask (c). Of course, the extra Sampling Level must be higher than the global SL set for the full frame
  3. In case of using the Alpha channel or a Custom Alpha channel of the same render as the sampling mask, that channel has to be obviously enabled (d)

 

 

Setting an extra sampling on render to refine only the skin areas. The armour and body looks clean at SL 10 (above) while the skin areas still need more rendering, mainly in the back-lit ears.
Instead of continuing to refine the whole frame, you can use a mask of the skin areas (center) and get those areas rendered up to SL 18 (below). Image courtesy of Quentin Chaillet (www.qchaillet.com)

 

 

During the render 

During the first step of the render process, the engine is rendering the full frame as usual. The SL parameter indicates the global sampling level of the whole image as with any regular render. The Extra Sampling parameter aside displays n/a (not activated), indicating that the extra sampling has not started. (and indicates that the render is still operating in full frame mode).  

Once the full frame SL is reached, Maxwell switches automatically to selective sampling, refining the areas indicated by the mask. The Extra Sampling parameter now indicates the sampling level of the selective area in progress, while the global SL parameter is calculated considering the sampling values in the different areas, and their relative surface. 

You can visualize what parts of the image are actually being rendered by hitting the "E" key, or by choosing Show Extra Sampling Mask in the right-click menu. Maxwell will use a red mask to show the areas that are not being rendered, maintaining in its true color the parts of the image currently rendering. 

 

Maxwell can display what areas of the image are not being rendered (masked in red) and what areas are currently rendering (in true color), 
by hitting the "E" key or enabling Show Extra Sampling Mask in the right-click menu (right)

 

 

At any moment during a render, you can check the Sampling Level of a pixel by simply hovering the cursor over the image. The bottom information bar in Maxwell displays the Sampling Level of the selected pixel, so you can easily check the SL of any part of your image. 

 

The bottom information bar in Maxwell displays the Sampling Level of the pixel underneath the cursor 

 

A note on Sampling Level for heterogeneous renders

When a render contains areas with different Sampling Levels, generally the full frame is rendered to a certain SL, and then some areas are rendered to a higher SL– so the global SL value for the image as a whole is calculated by considering all the pixels in the image and their corresponding sampling values. That is the reason why on heterogeneous renders, the global SL is usually a decimal value (like 14.63) instead of the typical round numbers on homogeneous renders (like 14.00), where all the pixels present the same sampling value. 

Bear in mind that if a heterogeneous render is later resumed to a higher SL without indicating zones –full frame treatment–, all the pixels of the image will start to render until the average global SL reaches the new desired value. It will not homogenize the image, but will add samples to all areas. 

If for any reason you need to homogenize an heterogeneous render, just resume it with a new sampling zone by simply inverting the original mask (with the Invert Mask option) to equalize the SL of the previous area. 


How does the Extra Sampling feature work? 

Take a look at how this feature works in this video overview. 


Extra Sampling overview