Houdini 22.0 Nodes Copernicus nodes

Height to Caustics Copernicus node

Creates caustic patterns on the ground from a refractive height layer.

On this page
Since 22.0

This node treats a height input as the surface of a refractive medium to create caustic patterns. Use this node to simulate refraction based on a water surface (the height input).

For each pixel, the node traces light from a directional or point light source through the surface, refracts (bends) the ray using the surface normal, and then accumulates where the ray reaches the ground. Concentrated ray hits create brighter caustic patterns.

Use the Quality parameters to improve the realism and noise of the simulated refraction. These control the radius and tracing of photons in each pixel’s ray, and the amount of denoising for each pixel.

When you wire in a ground input, the node ray traces against that ground height layer. Otherwise, the node uses a flat ground plane that you control with the Ground Offset parameter.

Note

Set Signature to RGB to use the Dispersion parameters.

How to

For example, use the following steps to create a caustic pattern that has dispersion on a ground input.

Note

Only the height input is required for this node to work.

  1. Wire a noise COP into the Height to Caustics COP’s height input.

    For example, connect a Fractal Noise COP that has low Amplitude and Roughness. This is a basic setting and reflects the fact that caustics are often under a gentle water surface.

  2. Set the Height to Caustics COP’s Signature to RGB. This adds dispersion.

  3. Set Method to the Perturbation or Spectrum dispersion model. Perturbation is a fast approximation. Spectrum is more physically accurate and shows more interesting details, but expensive.

  4. Wire a height layer into the Height to Caustics COP’s ground input. This generates the caustic pattern on that ground.

  5. Configure the ground input so it has lower values than the height input. You can further adjust the ground values with the Height to Caustics COP’s Ground parameters.

    Tip

    Since height is the water surface, set some ground values higher to represent exposed mounds or rocks.

You now have a caustic pattern that simulates refraction. Adjust the light direction (Light Azimuth and Light Altitude) or position (Light Position) to alter the display of basic shading.

Parameters

Signature

The layer type to generate.

See Signatures for more information.

Space

The space to use for the light direction or position.

Local

Use the height input’s local space for the light direction or position.

World

Use world space for the light direction or position.

Enable Tile

Wraps ray hit positions back into the output image when they land outside of the image’s boundary.

Directional

Traces light from a directional light source. When off, the node uses a point light source.

Light Azimuth

The horizontal angle (in degrees) of the directional light.

Light Altitude

The vertical angle (in degrees) of the directional light above the horizon.

Light Position

The position of the point light in the set Space.

Exposure

The amount by which to multiply the final caustic intensity. Higher values brighten the image while lower values darken the image.

Height

Index of Refraction

The index of refraction of the medium, which determines how much to bend the light when it enters the surface (height).

The default value (1.33) approximates water.

Height Offset

The amount to add to the height before tracing rays.

Height Scale

The amount by which to multiply the height before tracing rays.

Compute Derivative outside Image

Lets the Derivative COP in the node’s subnetwork read outside the image bounds when it calculates the height surface. This affects the surface normals used for refraction.

Kernel Size

The Kernel Size of the Derivative COP in the node’s subnetwork when it calculates the height surface.

Ground

These parameters control the ground input. If this input isn’t connected, the node uses the Ground Offset as a flat ground plane.

Ground Offset

The height of the flat ground plane. When you connect a ground input, this becomes the amount to add to the ground’s height.

Ground Scale

The amount by which to multiply the ground's height before adding the Ground Offset.

Ray Trace Iterations

The number of Newton iterations to use to approximate where refracted rays intersect with the ground height layer.

Compute Derivative outside Image

Lets the Derivative COP in the node’s subnetwork read outside the image bounds when it calculates the ground layer. This affects the ray-ground intersection solve.

Kernel Size

The Kernel Size of the Derivative COP in the node’s subnetwork when it calculates the ground layer.

Quality

Photon Jitter Radius

The radius of the photon samples in the rays to jitter during accumulation. Higher values create softer caustics with less grid artifacts. This parameter has no effect when Photon Iterations is set to 1.

Photon Iterations

The number of photon accumulation passes to run for each pixel. This improves the realistic quality of the simulated refraction. Higher values reduce noise and improve denoising quality, but take longer to cook.

Denoise Iterations

The number of denoising iterations to apply to each pixel after photon accumulation. Higher values reduce noise and grain to smooth and blur the pixels.

Denoise Mask

A ramp that controls where to apply denoising based on the caustic intensity mask. A higher point Value applies stronger denoising in the corresponding intensity range.

See Ramp parameters for more information.

Dispersion

These parameters are available only when the Signature is set to RGB.

Method

The method of dispersion to use, which determines how the light separates into colors. When set to Spectrum, you can also set the transparent material used for spectral dispersion.

Perturbation

Uses a fast approximation that perturbs the refractive result into color bands. This method is faster than Spectrum, but less physically accurate.

Spectrum

Samples wavelengths using a material’s dispersion model, which you set in the dropdown menu. This method can create more vivid dispersion, but is slower than Perturbation.

Water

Uses water-like dispersion.

Glass

Uses glass-like dispersion, which is stronger than Water.

Diamond

Uses diamond-like dispersion, which produces the strongest color separation.

Background Color

The background color composited behind the RGB caustics.

Strength

The amount of color dispersion. Higher values increase the separation between wavelengths so the individual RGB bands expand.

Number of Colors

When the Method is Perturbation, this is the number of color bands used for photon distribution.

When the Method is Spectrum, this is the number of wavelength samples per photon iteration. Higher values create smoother spectral dispersion, but take longer to cook.

Inputs

height

The height layer that represents the refractive surface of the transparent medium.

ground

An optional height layer that represents the ground on which the caustics display. If this input isn’t connected, the node uses a flat ground plane (set with the Ground Offset parameter).

Outputs

caustics

The generated caustic pattern on the ground.

See also

Copernicus nodes