Keywords: main

Next: 1.18 User-Defined Shaders Up: 1. Functionality Previous: 1.16 Light Mapping.x

# 1.17 Multipass Rendering3.1

Sometimes, very large scenes are not rendered in one pass but in multiple passes, because they are too large for the machine, or because different passes are rendered on different machines to increase parallelism, or because some passes are expected to change while others stay the same, so only the modified passes need to be rerendered. (This last one is very common in entertainment content production.)

It is generally not sufficient to render multiple images and then composite them into one. Pass compositing is not simple alpha blending but a complex user-defined process that involves at least the Z depth. Although mental ray supports saving the Z buffer to files, there is only one Z value per pixel.

mental ray supports multipass rendering by saving rendering results not as image files but as sample files. Every primary ray is a sample, and is stored with all available frame buffer values. The file format used for sample files is unpublished and may change with new versions of mental ray, it is not useful as a data interchange format for other programs, and is not intended for long-term storage. Merging is done by a user-defined function (if absent, a simple Z switcher is used) that has access to all frame buffer results of all passes, one sample at a time. Multipass rendering is controlled with a pass statement script in the camera definition that is similar to output statements.

Next: 1.18 User-Defined Shaders Up: 1. Functionality Previous: 1.16 Light Mapping.x