This patch adds Interpolation modes to Map Range node.
Modes: Linear interpolation (default), stepped linear, smoothstep and smootherstep.
This also includes an additional option for the Clamp node to switch between Min Max (default) and Range mode.
This was needed to allow clamping when To Max is less than To Min.
The Map Range node effectively carries out two operations, first an interpolation is carried out on the From values and then mapped to the To values. The Result value is then optionally clamped to the output range. Clamp is not required for Smoothstep or Smootherstep as these automatically clamp. In Stepped Linear mode, the Steps value controls how many steps are used in the interpolation. This is based on the [0-1] range. A value of 1 will give two values, imagine this is like steps on a staircase. Inverse Linear and Linear are closely related and flipping the values of the two ranges effectively swaps between them.