A color interpolator resource which can be used to generate colors between user-defined color points. Given a set of colors, this resource will interpolate them in order. This means that if you have color 1, color 2 and color 3, the gradient will interpolate from color 1 to color 2 and from color 2 to color 3. The gradient will initially have 2 colors (black and white), one (black) at gradient lower offset 0 and the other (white) at the gradient higher offset 1. See also [Curve] which supports more complex easing methods, but does not support colors. Adds the specified color to the end of the gradient, with the specified offset. Returns the color of the gradient color at index [param point]. Returns the offset of the gradient color at index [param point]. Returns the number of colors in the gradient. Removes the color at the index [param point]. Reverses/mirrors the gradient. [b]Note:[/b] This method mirrors all points around the middle of the gradient, which may produce unexpected results when [member interpolation_mode] is set to [constant GRADIENT_INTERPOLATE_CONSTANT]. Returns the interpolated color specified by [param offset]. Sets the color of the gradient color at index [param point]. Sets the offset for the gradient color at index [param point]. Gradient's colors returned as a [PackedColorArray]. Defines how the colors between points of the gradient are interpolated. See [enum InterpolationMode] for available modes. Gradient's offsets returned as a [PackedFloat32Array]. Linear interpolation. Constant interpolation, color changes abruptly at each point and stays uniform between. This might cause visible aliasing when used for a gradient texture in some cases. Cubic interpolation.