These shaders provide a gradient ramp for RGB output and a spline ramp for float output. As points are added, edited or deleted on the curve or gradient, corresponding inputs are created dynamically for the position, color (or value) and interpolation. These inputs are then available to link upstream shaders so that noises and textures can be plugged in. Effects can be created by using a ramp_float shader to drive the displacement and a ramp_rgb shader to drive the color. Internally, the shaders use lazy caching of the parameters of the curves and give intermediate results. Therefore both ramp shaders are faster when not textured or when only some of the parameters are textured.
ramp_rgb and ramp_float with linkable inputs (which can be keyframed).
Tube with a ramp_rgb applied. Note the state_float used as the input because the ramp_rgb shader has no knowledge of the objects UVs.
Tube with ramp_float used as displacement showing constant, linear and catclark interpolation
ramp_rgb and ramp_float combined with some noises