Stopping and pausing a renderer

Stopping and pausing a renderer

Stopping functionality is meant for progressive renderers which may be stopped manually at any time.

Renderers such as path tracers may be set to render indefinitely, in which case the only way to stop rendering is through this functionality. Stopping a renderer differs from canceling/aborting in that a stopped render is considered successful, finished, complete. Stopping a progressive renderer is equivalent to reaching a pre-set termination criterion, such as time or number of iterations. Following a stop, the rendered image will be saved, the render elements will be processed, and the next frame of the animation sequence will be rendered - all things that do not happen upon canceling a render.

Pausing functionality enables a user to temporarily interrupt the rendering process, freeing computer resources to perform other tasks. 3ds Max has long supported the pausing of renderers through a wait loop in the call to RendProgressCallback:Progress(), however this functionality is not well suited for all renderers. These methods below supersede the legacy functionality; a renderer that supports pausing through this interface will not see the progress callback perform a wait loop when the renderer is paused.