Houdini 20.0 Nodes VOP nodes

Marble VOP node

Simulates a shiny marble material.

This node type is deprecated. It is scheduled to be deleted in an upcoming revision of Houdini.

(Since version 15.0.)

This operator simulates a shiny marble material.

The Vein Direction (vdir) input determines the overall orientation of the marble veins. To better visualize the general vein orientation, you can temporarily reduce the Vein Frequency (vfreq) and the Noise Frequency (nfreq).

The Vein Frequency (vfreq) input controls the number of veins in the pattern. For wider or thinner veins, vary the Vein Attenuation (vatten) input.

The Groove Depth (gdepth) and Groove Threshold (gthresh) inputs allow you to displace the surface along the vein area. A groove depth of zero will not generate any displacements at all. The threshold is a value ranging between zero and one that determines the percentage of the veiny area to be displaced. Alternatively, you can use the Vein Amount output in a separate displacement shader.

To blend between more than two colors, edit this operator’s subnetwork and replace the Color Mix operator with a Spline operator and connect all the color inputs into the Spline’s “key” inputs, repeating the first and last color twice.

If the marble you want to simulate has different material properties on the base stone than on the veins, eliminate the common Lighting Model operator and pipe lit colors into the appropriate Color Mix inputs. The resulting mix is the final marble color. (A lit color is one that is output from a Lighting Model.) This allows you, among other things, to apply different specular and roughness to each marble component, and to displace either the base stone, the veins, or both in an individual fashion.

If the Position (P) input and the Normal (N) input are not connected, the global variables by the same names will be used instead. Typically you will use Rest Position or UV Space Change as inputs for P, and will not touch N unless you want to apply additional displacement to the stone surface using an operator such as Bump Noise. If you need to access the global variables directly, they are available from the Global Variables operator.

See also

VOP nodes