NOTE: As of Corona Renderer 4 this section is obsolete. It only applies to Corona Renderer 3 Hotfix 2 and earlier. 

For instructions on how to use the new caustics solver that's included in Corona Renderer 4 and newer, please see here: 

How to render caustics with the new caustics solver?



How to render caustics in Corona Renderer 3 or older?




Can I render caustics in Corona Renderer 3 or older?


Yes! Rendering reflective and refractive caustics is perfectly possible, however right now (using Corona Renderer 1.7) it is quite inefficient (slow).

We are planning to introduce new caustics rendering method in Corona Renderer 4.




How to render caustics?


1. Reflective caustics

Rendering reflective caustics is straightforward. You will need:

  • A highly reflective material
    (a typical "metal" setup will work best - diffuse level 0, reflection level 1, Fresnel IOR at 10 or more)

(click to enlarge)

  • A light source (small, bright light will produce sharp, intensive caustics)
  • A surface which will catch the caustics (a ground plane, table top, etc.)

See: how to set up realistic materials



2. Refractive caustics 

Rendering refractive caustics requires:

  • A refractive material with "Caustics (slow)" option enabled
    (typical glass setup - diffuse level 0, reflection level 1, refraction level 1)

(click to enlarge)

  • The glass material cannot be using "Thin (no refraction)" option, as refraction is required to render caustics.
  • A light source (small, bright light will produce sharp, intensive caustics)
  • A surface which will catch the caustics (a ground plane, table top, etc.)

See: how to set up realistic materials


By default, both the reflective and refractive caustics may come out rather dim. To increase their intensity, you can increase the Max Sample Intensity value above the default 20, or set it to 0 to prevent clamping of GI samples and get unbiased rendering.


Note: increasing the MSI value will introduce more noise. Setting it to 0 will usually result in extremely noisy rendering, where some of the bright pixels may never disappear. 




Why is rendering caustics slow?


Currently (version 1.7) there is no dedicated algorithm for rendering caustics in Corona Renderer, so by default it uses path tracing for this. Calculating caustics using this method is very time-consuming, because it is done in a physically-correct way, just like for any other light or GI in the scene. We are planning to implement faster, more efficient way to render caustics in the near future. 


See: Corona Renderer for 3ds Max roadmap


How is glass rendered when the "Caustics (slow)" option is disabled?


If the "Caustics (slow)" option is disabled, all glass materials are casting so called "transparent shadows", which are a compromise between speed and realism. They will render much faster than caustics, but the light will not be focused realistically. 


See "examples" section below for an image rendered with the caustics disabled. 




Troubleshooting


I can't see caustics!

Make sure that your glass material has the "Caustics (slow)" option enabled under refraction properties. 


My caustics are too dark!

Increase MSI value to 100 or more, and check again. You can also set it to 0 to get unbiased rendering, however the image may then become extremely noisy. 


Are there some other tips and tricks on rendering caustics?

Check out our forum. Here are some useful threads:





Examples


(click to enlarge)

Image rendered at default render settings for 30 minutes with the "Caustics (slow)" option disabled for the glass materials, which means that no refractive caustics are visible, and transparent shadows are used instead. This is the compromise between rendering speed and realism. 




Caustics are enabled for the glass materials, and all render settings are at their defaults (MSI is set to 20). Reflective and refractive caustics are present, but they are hardly visible. 




Caustics are enabled for the glass materials, and MSI is set to 0. This results in much sharper, physically-correct caustics, however the image becomes very noisy. 




Caustics enabled. CESSENTIAL_Direct render element showing direct lighting. Caustics are not visible.




Caustics enabled. CESSENTIAL_Inirect render element showing indirect lighting (GI). Caustics are visible, which means that they are a part of GI lighting. It also means that increasing the GI vs. AA value will improve caustics quality per render pass. 




Volumetric caustics rendered with the default render settings by enabling a global volume material.