What available render elements are there?

Tutorial: Setting up and compositing CESSENTIAL render elements


  • Two render elements are always present: Beauty and Alpha.

  • Optional elements can be added either via the dedicated render dialog tab (3dsmax), or SCN file (standalone).

  • Some render passes differ in the standalone and 3dsmax versions of Corona. This article primarily describes the 3dsmax render passes. There is a separate description of the standalone passes.

  • Use render elements wisely, because each one currently increases the RAM usage for rendering by up to 64 bytes per pixel (that is about 1 GB for 5000×3000 px image).

  • Some shading-derived render elements will not render when using the “Render only elements” function. This information is included for all affected passes here.

Basic beauty pass decomposition

These 6 passes represent the standard (but not the only possible) way to compose final image from passes in Corona: you need to render all passes starting with CESSENTIAL and compose them using the “add” operation in linear color space (i.e. before adding gamma). All of them are only computed when using regular rendering; they will output black when using “Render only elements” mode.

Name Description
CESSENTIAL_Direct All diffusely bounced direct illumination (light that bounced exactly once in the scene before hitting camera)
CESSENTIAL_Indirect All diffusely bounced indirect illumination (light that bounced at least twice in the scene before hitting camera).
CESSENTIAL_Reflect All light specularly reflected into the camera (both direct and indirect). Includes imperfect and perfectly glossy (mirror) reflections.
CESSENTIAL_Refract All light refracted into camera (both direct and indirect). Includes imperfect and perfectly glossy (e.g. glass) refractions
CESSENTIAL_Translucency All translucency lighting (both direct and indirect).
CESSENTIAL_Emission All light that is emitted directly into the camera, with no bounces (i.e. directly visible lights sources/scene environment)
It contains the scattering in volumetric media (useful for example for separating clouds and fog)

Geometry render passes

Render passes containing additional geometry information. They can be used for masking, DOF/motion blur simulation, denoising, or visual debugging of the scene.

name Description
CGeometry_NormalsDotProduct Outputs the angle between the surface normal and ray direction (similarly to the Falloff map). White indicates surface directly facing the view; surfaces facing away from the view (grazing angles) are black. This quickly shows how does the scene look without shading.
CGeometry_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/smoothing groups.
CGeometry_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 include the effects of bump mapping and smoothing groups.
CGeometry_UvwCoords Outputs the surface mapping coordinates for selected channel. This can be used to check for mapping discontinuities and objects lacking mapping.
CGeometry_WorldPosition Outputs the surface world position XYZ vector directly as an RGB color.
CGeometry_ZDepth Outputs the z-buffer channel, with adjustable min (white) and max (black) depths.

Masking render passes

These render elements are used primarily for masking individual scene elements for postprocessing. They are all rendered even when using “Render elements only” function.

Name Description
CMasking_ID Assigns a random color to each pixel using one of the available modes. The most important ones are: Primitive ID: each primitive (typically triangle) in a mesh has different color, Material ID: each assigned material has different color, and Instance ID: each scene object has different color.
CMasking_Mask Creates a custom set of rules for including/excluding each object from the mask. The available conditions are material gbuffer ID, object gbuffer ID, and direct object selections

Shading render passes

Various shading-related passes. Some of the require full rendering (not “Render only elements” mode), as indicated in the second column.

Name Requires shading Description
CShading_Albedo No Shows the albedo (total reflectivity of the surface - the fraction of energy that is reflected in any way from the surface) of the scene surfaces. Scenes with too high albedo can cause problems - washed-out look and excessive render times. This pass can be used to quickly spot and fix problems - typically if your walls/floors/ceilings are shown in red, lowering their brightness will speed up rendering. Note: red does not automatically mean bad. Only problem is red on large, diffuse areas, like walls. For more detailed guide, see: What is albedo? How to use it?
CShading_Alpha Yes Duplicates the built-in alpha channel, so it can be saved to a separate location.
CShading_Components Yes This versatile render pass allows selecting custom subset of lighting components. It can add diffuse, reflect, refract, and translucency lighting, in both direct and indirect (GI) variants. The basic decomposition passes can be recreated using this pass (see: this illustration), or it can be used for finer division (e.g. separating reflect direct and indirect lighting).
CShading_RawComponent Yes This shows one component (diffuse, reflect, refract, …) color divided by the corresponding CShading_SourceColor (input texture) value. This results in a “raw” lighting, not containing the surface color/texture.
CShading_Shadows Yes Shows the shadows (energy subtracted from the image due to shadow ray occlusion). This is the complement to the beauty pass, showing white where there are black shadows. If this pass is linearly added to the beauty pass, it negates the visible shadows. Note that currently the shadows from environment lighting are always shown, resulting in a washed-out pass in typical interior renders.
CShading_SourceColor No The input color of a selected component (diffuse, reflect, refract, …). This is the value read from the texture, clamped to obey energy conservation laws.
CTexmap No Allows evaluation of an arbitrary texmap on all scene surfaces/environment. For example the AO pass can be easily created by adding CoronaAO texmap into this pass map slot.