The cell_noise shader is a very versatile shader that is capable of creating a wide range of shading effects. In this simple tutorial, we will cover how to create a caustic effect using a spot_light with the cell_noise shader connected to a gobo light filter. Thanks to Slava Sych for the assistance with this tutorial.

The scene file can be downloaded here.

Gobo -> Spot Light

  • Start off by creating a plane. We will project the cell_noise shader through a gobo using a spot_light.
  • Create a spot_light and point it at the plane. Increase the exposure of the spot_light.
  • Connect a gobo light filter to the spot_light.
  • Connect a cell_noise shader to the blend attribute of the gobo.

Cell Noise

  • Change the cell_noise pattern to Worley 1.
  • Increase the cell_noise scale. In this case, 20 was used in XYZ.
  • Change the coord_space to UV. This uses the object’s local UV coordinate and in this case, looks better for the effect that we want to achieve.

cell_noise shader using the Worley 1 pattern

Range Shader

We can use the range shader to linearly remap the output of the cell_noise shader to create something that looks like a caustic effect.

  • Insert a range shader in-between the cell_noise shader and the gobo.
  • Enable smoothstep in the range shader. 
  • Increase the input_min attribute and notice its effect on the cell_noise shader.

Input Min increased to 0.6

  • Reduce the bias to around 0.01. You should notice that it now looks more like a caustic effect.

Bias reduced to 0.01

  • Go back to the cell_noise shader and keyframe the time attribute. You should see something that looks like a caustic pattern!

Scene settings

  • No labels