Taming caustic lighting

Unfortunately it's never behaved differently than this for me. The above renders were done with raytracing but it doesn't seem to make a difference if I switch to PBR or Photon Mapping. Also, sometimes when using dispersion, there will be little perfect circles of colored light here and there across the scene, as if the refracting object is a rainbow disco ball. What can I do to get caustics to work normally?

Ah- these images are a wee bit old so I don't really have the .hip file. All I really did was just place a tube with a glass shader and a grid for it to cast shadows on, as well as a caustic light node. That's really all it was. And yeah I realize it does have very low samples, I didn't want to waste too much time with a nice looking render because this sample level was enough to show the issues I was having. Notice how the caustic light looks exactly the same in the first image and the second image, even though the light is coming at a completely different angle into the tube.

Looks normal to me for photon caustics. You're going to need 100-10000 times as many photons for it to start looking sharp. The photon light shaders are pretty ancient, maybe they could use a re-write.

Unless you have superimposed the images and compared the pixels' RGB values, “exactly” should be used reservedly. I won't even go into the fact that, to me, it seems that the images don't look exactly the same. Mainly because “it seems” and therefore I have not gone through the effort of actually producing some data.

Again, a .hip file would help the discussion acquire a shorter route through the noise till the destination. Maybe you should try to reproduce the .hip gile if you no longer have it, it could prove auto-didactically useful at the very least.

Have you downloaded McNistor's file (my_caustics.hipnc) and tested rendering?How do you render - in your file (tamingcaustics.hipnc) mantra_ipr gives an error. (?)

Try to do the following:1. Do rendering with the McNistor's scene and add screenshots/ file if you'll have errors/ caustics will be still in place with deleted tube.2. Add a camera to your current (tamingcaustics) scene and render again > with all objects and lights; without caustics light; without tube.

Probably you'll need to submit a bug.

*on the second of two uploaded by me images (McNistor is written at the top left corner) > the upper of three pictures - scene as it is; the middle picture - without caustics light; the bottom image - without tube object, but with the caustics light.

Hi, I thought I'd share my findings in case it helps. I already had a scene set up for a previous post on caustics so I modified it to be similar to this. I've attached some screenshots and the hip file.

As mentioned above, you need a lot of photons to get good results and when you increase the photon count, you'll notice it takes a lot longer to calculate the photons & render. So as an example of increased photons, I've also included a Redshift version where I've cranked up the photon count by a lot. In theory, if you increased the settings enough, Mantra would achieve similar results.

For this example:- I set the Photon target to just the glass. This means the photons aren't spread across the whole floor and are concentrated in the area you need. (the glass)- I also disabled the Caustic light on the glass object, Geometry>Shading, as this speeds up the rendering by a lot. It takes around 6 minutes without and about 1 hour with it enabled. I may be incorrect but you really only need the Caustic light to be visible on the floor (or whatever the caustics are visible on) as it's an effect cast through/from the glass/photon target.- The difference in lighting/exposure is due to me using Redshift's photographic exposure.- The dispersion values differ between the two shaders so I've not tried to match them.- These renders are not for overall comparison and are just to show sharper caustics/more photons.

Alright, I figured out that for now I can manually refresh the photon map by reloading the desktop. And now it seems like my photon maps automatically refresh inconsistently whenever I make a change. Now I'm just lost and wondering if I should do a reinstall.

jsmackMcNistor's version is green/purple because the material has a colored opacity. Opacity is not typically used for glass materials, except for fake glass for real time renderers

The transmission color is the parameter used for tinting glass on the principled shader.

Is this a physically plausible effect? If not, what other sort of setting should I look for to make sure my materials are always behaving realistically?

jsmackTry increasing the number of photons to around 10 million for a smoother result.

Did a low-sample render with 5 million photons, I'm already seeing improvements! There's even some neat reflection causticsWhat's the simplest way to reduce photon map generation times?

robsdesignAs mentioned above, you need a lot of photons to get good results and when you increase the photon count, you'll notice it takes a lot longer to calculate the photons & render. So as an example of increased photons, I've also included a Redshift version where I've cranked up the photon count by a lot. In theory, if you increased the settings enough, Mantra would achieve similar results.

Do you recommend that I switch from Mantra to Redshift? I hear that it's a lot faster but what will I be losing from Mantra if I do?

robsdesign- I set the Photon target to just the glass. This means the photons aren't spread across the whole floor and are concentrated in the area you need. (the glass)- I also disabled the Caustic light on the glass object, Geometry>Shading, as this speeds up the rendering by a lot. It takes around 6 minutes without and about 1 hour with it enabled. I may be incorrect but you really only need the Caustic light to be visible on the floor (or whatever the caustics are visible on) as it's an effect cast through/from the glass/photon target.

I have very little knowledge of the topic but if I'm not mistaken, caustic lighting on the object casting the caustics isn't necessary unless you're rendering volumetric caustics.I figured out how to set the photons to only the glass object, but how do make it so that caustics are only calculated for the objects they're being cast on to?