Table of Contents

This page provides information on Corona Multi-Passes in Cinema 4D. 


Overview


The render passes can be used to:

  • Split the rendered image into elementary components, such as global illumination and direct lighting, in order to adjust them in post-production and re-composite, if needed
  • Extract data that is otherwise inaccessible, such as object velocity, Z-Depth, or various kinds of masks
  • Analyze the rendering performance and find potential issues

The Corona render passes are specified in the Multi-Pass window located in the menu Corona. Corona does not support native Cinema 4D render passes and offers its own passes instead.

Two render passes are always present when rendering: Beauty and Alpha.

 The term "Render passes" is commonly used in Cinema 4D. Different terms may appear in other software: AOVs, Render Elements, Multipass Rendering, etc.

Adding a render pass always increases RAM usage during rendering.



 

Basic


These passes represent the standard (but not the only possible) way to assemble the final image: you need to render all passes starting with Basic and stack them one by one using the "add" operation in linear color space (i.e. before adding gamma). All of them are only computed when using regular rendering; they show as black when using the Render only masks option. 

Direct – All diffusely bounced direct illumination (light that bounced exactly once in the scene before hitting camera). 

Emission – All light that is emitted directly into the camera, with no bounces (i.e. directly visible lights sources/scene environment). 

Indirect – All diffusely bounced indirect illumination (light that bounced at least twice in the scene before hitting camera).

Reflect – All light specularly reflected into the camera (both direct and indirect). Includes imperfect and perfectly glossy (mirror) reflections.

Refract – All light refracted into camera (both direct and indirect). Includes imperfect and perfectly glossy (e.g. glass) refractions. 

Translucency – All translucency lighting (both direct and indirect). 

Volumetrics – All volumetrics (scene objects using volumetric effects and the global volume material). 

The option Apply denoising toggles denoising for the selected render pass. It is available for all Basic render passes except for the Emission pass.

Expand to see Basic Render Element Compositing

To compose BEAUTY out of render passes, take all Basic render passes and add them together in linear color space:




An example rendered image (BEAUTY render pass).


Direct render pass.

Geometry


These passes contain additional geometry information. They can be used for masking, DOF, and motion blur simulation in post-processing, denoising, or visual debugging of the scene. 

NormalsDotProduct – Outputs the angle between the surface normal and ray direction (similarly to the Cinema4D's native Falloff shader). White indicates surface directly facing the view; surfaces facing away from the view (grazing angles) are black. This quickly shows what the scene looks like without shading.

NormalsGeometry – Outputs the surface normal vectors as color values (with transformation RGB = (XYZ+[1,1,1])/2). Uses normals directly calculated from the geometry, with no bump mapping or smoothing groups. 

NormalsShading – Outputs the surface normal vectors as color values (with transformation RGB = (XYZ+[1,1,1])/2). Uses the final shading normals from the lighting calculation, which includes the effects of bump mapping and smoothing groups. 

UvwCoords – Outputs the surface mapping coordinates for the selected channel. This can be used to check for mapping discontinuities and objects lacking mapping. 

Channel ID – Specifies the UVW map channel to output the coordinates from.

Velocity – Outputs the surface velocity vector as an RGB color. 

Mode – Velocity pass mode. In Camera mode the movement relative to screen is shown, with movement to right being red, and movement up being green. Both object and camera movement is taken into account. In World mode the object movement in world space (XYZ represented as RGB) is shown. Camera movement is ignored in this mode.
Multiplier – Intensity multiplier that scales the velocity globally up or down.
Offset – Constant offset added to the velocity pass. Some postprocessing tools require offset 0.5 to bring negative values to positive ones.

WorldPosition – Outputs the surface world position XYZ vector directly as an RGB color.

ZDepth – Outputs the Z-Buffer channel, with adjustable min (white) and max (black) depths. 

Allow propagation through reflection/refraction – When enabled, this render pass propagates through reflection and/or refraction according to the propagation settings of the materials. When disabled, this render pass will be computed based on the first visible object.
Min Z (white) – This distance from the camera is treated as the minimum Z distance (white color).
Max Z (black) – This distance from the camera is treated as the maximum Z distance (black color).
Clamp output to 0-1 range – Brings any values lower than 0 or higher than 1 to the 0-1 range.


NormalsShading render pass.





Info


These passes show information related to the rendering process and its performance. Useful mostly for debugging, creating comparisons, and investigating performance issues. 

SamplingFocus – Shows how Corona distributes samples in the image during rendering. Brighter colors show areas where more samples are used. Darker color shows areas where less samples are used. This pass is available only if adaptivity is enabled (it is enabled by default). It updates each time adaptivity is recalculated (by default every 5 passes). 

Value – Linear brightness multiplier of the displayed values.

RenderStamp – Stores the render stamp only. Useful for saving rendering statistics without having to keep the render stamp visible in the actual image. 



SamplingFocus render pass.


Mask


These render passes are used primarily for masking individual scene passes for postprocessing. They are all rendered when using the Render only masks option.

ID – Assigns a random color to each pixel using one of the available modes. The most important ones are:

Primitive – Each primitive (typically a triangle) in a mesh receives different color. 
Geometry group – Each geometry group receives a different color.
Instance – Each scene object receives a different color.
Material – Each assigned material receives a different color.
Object – This mode works like the Instance mode but Instance objects are considered the same object as the original one and receive the same color.

Allow propagation through reflection/refraction – When enabled, this render pass propagates through reflection and/or refraction according to the propagation settings of the materials. When disabled, this render pass are computed based on the first visible object.

Mask – Creates a custom set of rules for including/excluding each object from the mask. The available conditions are:

Object buffer ID – Determines which Object buffer ID is used for the mask creation. The Corona Compositing tag should be assigned to the objects.
Material IDDetermines which Material ID is used for the mask creation. The Material ID should be specified for each material.
Manual object selection – Determines the objects that will be included in the mask. You can manually include/exclude objects from the object manager.

Allow propagation through reflection/refraction – When enabled, this render pass will propagate through reflection and/or refraction according to the propagation settings of the materials. When disabled, this render pass will be computed based on the first visible object.

WireColor – Assigns colors to scene objects based on their viewport colors (object colors). The object's display color should be set to Custom in the basic attributes for each object.

Allow propagation through reflection/refraction – When enabled, this render pass propagates through reflection and/or refraction according to the propagation settings of the materials. When disabled, this render pass is computed based on the first visible object.

Cryptomatte – An advanced masking pass. Cryptomatte is an industry-standard, which allows rendering masks based on object Names, Materials, Layers, or Names with Hierarchy, all saved into an EXR. Cryptomatte exports are able to properly handle Depth of Field and Motion Blur effects (which otherwise can cause fringing or blurring at the edges of other mask types). 

ID Type – Determines how the different objects are distinguished in the cryptomatte render pass:

Name – Objects with the same name have the same color. If the object's name is different they'll be assigned a different color.
Name with hierarchy – Only objects that have the same name and are in the same group have the same color.
Layer – Only objects in the same layer have the same color.
Material – Only objects with same material will have the same color.

This pass displays only a preview in the VFB, for proper use the whole frame needs to be saved in CXR format and then loaded in a Cryptomatte-enabled external application as EXR. This means that if you open just the outputname_CMasking_Cryptomatte file in a Cryptomatte-enabled application, it won't work. You need to save the main output file as CXR and then open it in a Cryptomatte-enabled application as an EXR file. 

Maximum object layers – Determines how many different objects can be identified by the cryptomatte render pass in a single pixel. Increasing this value significantly increases memory consumption (separate image buffer is required for every two levels).


WireColor render pass.

Shading


These render passes are related to scene shading.

Albedo – This pass shows the total percentage of incoming light that is reflected or scattered by the material in any way (diffuse, reflection, refraction, translucency). Objects displayed in red have very high albedo and very bright diffuse and/or translucency component. Such materials, when applied to major portions of the scene (walls, floors, ceilings) can cause problems: excessive render times, noise, overall bad result with washed-up look.

High albedo (red) – Albedo values above this threshold are considered high and marked red in this render pass. The default value of 0.85 is generally considered as a too high albedo value.
Low albedo (blue) – Albedo values below this threshold are considered low and marked blue in this render pass. The default value is 0.

Alpha – This pass duplicates the built-in alpha channel, so it can be saved to a separate location. 

BloomGlare – This pass contains only the Corona's bloom and glare effect (against a black background). It can be used to compose and adjust bloom and glare in post-production. 

Apply bloom – Toggles the bloom effect.
Apply glare – Toggles the glare effect.

Components – This versatile render pass allows selecting a custom subset of lighting components. It can include diffuse, reflect, refract, and translucency lighting, in both direct and indirect (GI) variants. It can be used for basic as well as advanced image decomposition (e.g. separating lighting into direct and indirect reflections). 

Apply denoising – Toggles denoising for this render pass.

Virtual Beauty – An additional Beauty pass, which can be added multiple times to get different versions of the final image: with and without denoising, with and without bloom, with and without glare. 

Denoise amount – Specifies the amount of denoising to apply to this render pass.
Apply bloom – Toggles the bloom effect.
Apply glare – Toggles the glare effect.

RawComponent – This shows one component (diffuse, reflect, refract, translucency) color divided by the corresponding SourceColor (input texture) value. This results in a "raw" lighting, not containing the surface color/texture. 

Apply denoising – Toggles denoising for this render pass.

Shadows – Shows the shadows (energy subtracted from the image due to shadow ray occlusion). This is the complement to the beauty pass, showing a white color where there are black shadows. If this pass is linearly added to the beauty pass, it negates the visible shadows. Note that the shadows from environment lighting are always shown, resulting in a washed-out pass in typical interior renders. 

Apply denoising – Toggles denoising for this render pass.

SourceColor – The input color of a selected component (diffuse, reflect, refract, translucency, opacity). This is the value read from the texture, clamped to obey energy conservation laws.

Caustics – Shows only reflective and refractive caustics coming from the fast caustics solver. It can be used to compose and adjust caustics in post-production. 

Apply denoising – Toggles denoising for this render pass.
Apply bloomToggles the bloom effect.
Apply glareToggles the glare effect.
Include Direct – Includes caustics that are directly visible from the camera.
Include Reflected – Includes all caustics that are visible from the camera through a series of specular reflections/refractions, where the first interaction (first bounce after the camera) is reflection.
Include Refracted – Includes all caustics that are visible from the camera through a series of specular reflections/refractions, where the first interaction (first bounce after the camera) is refraction.
Include GI – Includes caustics that are not in the other 3 categories (e.g. caustics visible from the camera through diffuse reflection).


SourceColor render pass.

Lightmix


LightMix – This render pass is required to show the interactive LightMix in the VFB. It is possible to add multiple passes of this type, however, each one of them will show exactly the same LightMix setup. 

Apply bloom – Toggles the bloom effect.
Apply glare – Toggles the glare effect.

LightSelect – This render pass is required to show and separate scene lights as adjustable items of the interactive LightMix. It stores information about the specific lights included in this pass. Saving a LightSelect pass always saveя the light intensity and color as it is defined in the scene itself, without the LightMix adjustments. 

Include specific light sources – Allows manually adding specific lights to the include list.
Include lights not assigned to other LightSelect elements – Automatically includes lights that were not added to other LightSelect render pass.
Apply denoising – Toggles denoising for this render pass. 


To learn more about Lightmix visit: LightMix






Texmap – Allows the evaluation of an arbitrary texture map or shader on all scene surfaces. For example, the Ambient Occlusion pass can be easily created by adding a CoronaAO shader into this pass map slot.

Allow propagation through reflection/refraction – When enabled, this render pass propagates through reflection and/or refraction according to the propagation settings of the materials. When disabled, this render pass is computed based on the first visible object.
Map
– Drag and drop a shader into this slot to show it applied to all surfaces in this render pass.
Ignore background – When enabled, this option excludes the background from applying the shader, displaying a solid black color for the background instead.
Apply denoising – Toggles denoising for this render pass.

Folder – This element provides a way to group and organize render passes. This element is not rendered and it doesn't include any data.


Texmap render pass showing scene geometry covered with a procedural Cinema 4D Checkerboard shader.

Render Only Masks Option


When enabled, only the render elements which do not require shading are rendered (such as masks and normals). This option is useful, for example, if you do not need to render the full image, but you need some masking passes. Since no shading is calculated, this option makes the rendering process almost instant, so you do not need to spend additional time re-rendering the whole image.


 


Saving Render Elements


There are multiple ways of saving render elements:

Specifying the main output file and Multi-Pass paths in Cinema 4D – Once the rendering is completed, the main output file and all render elements are saved in the file formats and locations specified in Cinema 4D.

If you use the CXR file format for the main output file and all render elements, the main output file will include additional data such as LightMix layers and denoising information so that you can post-process it in the Corona Image Editor, however, no other render elements will include these data.





Clicking the "Save" button in the Corona VFB once – Only saves the render pass currently visible in the VFB. For example, if the Beauty pass is selected in the Corona VFB, this pass is saved. If a NormalsShading pass is selected in the Corona VFB, this element is saved, and so on.

If you select the Beauty pass in the Corona VFB and save it in the CXR file format, it will include additional data such as LightMix layers and denoising information so that you can post-process it in the Corona Image Editor. If you save any other render pass in the CXR file format, that pass will not include any of the additional data.





Clicking and holding the "Save" button in the Corona VFB – Shows the following two options:

Save all – Saves the beauty pass and every other available render pass as separate files in the location of your choice, using the file format of your choice. The main output file will include additional data such as LightMix layers and denoising information so that you can post-process it in the Corona Image Editor, however, no other render passes will include these data.
Save CXR – Stores all the information from the Corona VFB (all render elements, including the LightMix, tone mapping, denoising data, etc) inside a single CXR file. This file can be then used to resume rendering later, post-process it in the Corona Image Editor, perform denoising later, and so on.





Was this helpful?