Attention: Here be dragons (unstable version)

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Redot.

Color

A color represented in RGBA format.

Description

A color represented in RGBA format by a red (r), green (g), blue (b), and alpha (a) component. Each component is a 32-bit floating-point value, usually ranging from 0.0 to 1.0. Some properties (such as CanvasItem.modulate) may support values greater than 1.0, for overbright or HDR (High Dynamic Range) colors.

Colors can be created in various ways: By the various Color constructors, by static methods such as from_hsv, and by using a name from the set of standardized colors based on X11 color names with the addition of TRANSPARENT. GDScript also provides @GDScript.Color8, which uses integers from 0 to 255 and doesn't support overbright colors.

Note: In a boolean context, a Color will evaluate to false if it is equal to Color(0, 0, 0, 1) (opaque black). Otherwise, a Color will always evaluate to true.

Color constants cheatsheet

Note

There are notable differences when using this API with C#. See C# API differences to GDScript for more information.

Tutorials

Properties

float

a

1.0

int

a8

255

float

b

0.0

int

b8

0

float

g

0.0

int

g8

0

float

h

0.0

float

ok_hsl_h

0.0

float

ok_hsl_l

0.0

float

ok_hsl_s

0.0

float

r

0.0

int

r8

0

float

s

0.0

float

v

0.0

Constructors

Color

Color()

Color

Color(from: Color, alpha: float)

Color

Color(from: Color)

Color

Color(code: String)

Color

Color(code: String, alpha: float)

Color

Color(r: float, g: float, b: float)

Color

Color(r: float, g: float, b: float, a: float)

Methods

Color

blend(over: Color) const

Color

clamp(min: Color = Color(0, 0, 0, 0), max: Color = Color(1, 1, 1, 1)) const

Color

darkened(amount: float) const

Color

from_hsv(h: float, s: float, v: float, alpha: float = 1.0) static

Color

from_ok_hsl(h: float, s: float, l: float, alpha: float = 1.0) static

Color

from_rgbe9995(rgbe: int) static

Color

from_string(str: String, default: Color) static

float

get_luminance() const

Color

hex(hex: int) static

Color

hex64(hex: int) static

Color

html(rgba: String) static

bool

html_is_valid(color: String) static

Color

inverted() const

bool

is_equal_approx(to: Color) const

Color

lerp(to: Color, weight: float) const

Color

lightened(amount: float) const

Color

linear_to_srgb() const

Color

srgb_to_linear() const

int

to_abgr32() const

int

to_abgr64() const

int

to_argb32() const

int

to_argb64() const

String

to_html(with_alpha: bool = true) const

int

to_rgba32() const

int

to_rgba64() const

Operators

bool

operator !=(right: Color)

Color

operator *(right: Color)

Color

operator *(right: float)

Color

operator *(right: int)

Color

operator +(right: Color)

Color

operator -(right: Color)

Color

operator /(right: Color)

Color

operator /(right: float)

Color

operator /(right: int)

bool

operator ==(right: Color)

float

operator [](index: int)

Color

operator unary+()

Color

operator unary-()


Constants

ALICE_BLUE = Color(0.941176, 0.972549, 1, 1) 🔗

Alice blue color.

ANTIQUE_WHITE = Color(0.980392, 0.921569, 0.843137, 1) 🔗

Antique white color.

AQUA = Color(0, 1, 1, 1) 🔗

Aqua color.

AQUAMARINE = Color(0.498039, 1, 0.831373, 1) 🔗

Aquamarine color.

AZURE = Color(0.941176, 1, 1, 1) 🔗

Azure color.

BEIGE = Color(0.960784, 0.960784, 0.862745, 1) 🔗

Beige color.

BISQUE = Color(1, 0.894118, 0.768627, 1) 🔗

Bisque color.

BLACK = Color(0, 0, 0, 1) 🔗

Black color. In GDScript, this is the default value of any color.

BLANCHED_ALMOND = Color(1, 0.921569, 0.803922, 1) 🔗

Blanched almond color.

BLUE = Color(0, 0, 1, 1) 🔗

Blue color.

BLUE_VIOLET = Color(0.541176, 0.168627, 0.886275, 1) 🔗

Blue violet color.

BROWN = Color(0.647059, 0.164706, 0.164706, 1) 🔗

Brown color.

BURLYWOOD = Color(0.870588, 0.721569, 0.529412, 1) 🔗

Burlywood color.

CADET_BLUE = Color(0.372549, 0.619608, 0.627451, 1) 🔗

Cadet blue color.

CHARTREUSE = Color(0.498039, 1, 0, 1) 🔗

Chartreuse color.

CHOCOLATE = Color(0.823529, 0.411765, 0.117647, 1) 🔗

Chocolate color.

CORAL = Color(1, 0.498039, 0.313726, 1) 🔗

Coral color.

CORNFLOWER_BLUE = Color(0.392157, 0.584314, 0.929412, 1) 🔗

Cornflower blue color.

CORNSILK = Color(1, 0.972549, 0.862745, 1) 🔗

Cornsilk color.

CRIMSON = Color(0.862745, 0.0784314, 0.235294, 1) 🔗

Crimson color.

CYAN = Color(0, 1, 1, 1) 🔗

Cyan color.

DARK_BLUE = Color(0, 0, 0.545098, 1) 🔗

Dark blue color.

DARK_CYAN = Color(0, 0.545098, 0.545098, 1) 🔗

Dark cyan color.

DARK_GOLDENROD = Color(0.721569, 0.52549, 0.0431373, 1) 🔗

Dark goldenrod color.

DARK_GRAY = Color(0.662745, 0.662745, 0.662745, 1) 🔗

Dark gray color.

DARK_GREEN = Color(0, 0.392157, 0, 1) 🔗

Dark green color.

DARK_KHAKI = Color(0.741176, 0.717647, 0.419608, 1) 🔗

Dark khaki color.

DARK_MAGENTA = Color(0.545098, 0, 0.545098, 1) 🔗

Dark magenta color.

DARK_OLIVE_GREEN = Color(0.333333, 0.419608, 0.184314, 1) 🔗

Dark olive green color.

DARK_ORANGE = Color(1, 0.54902, 0, 1) 🔗

Dark orange color.

DARK_ORCHID = Color(0.6, 0.196078, 0.8, 1) 🔗

Dark orchid color.

DARK_RED = Color(0.545098, 0, 0, 1) 🔗

Dark red color.

DARK_SALMON = Color(0.913725, 0.588235, 0.478431, 1) 🔗

Dark salmon color.

DARK_SEA_GREEN = Color(0.560784, 0.737255, 0.560784, 1) 🔗

Dark sea green color.

DARK_SLATE_BLUE = Color(0.282353, 0.239216, 0.545098, 1) 🔗

Dark slate blue color.

DARK_SLATE_GRAY = Color(0.184314, 0.309804, 0.309804, 1) 🔗

Dark slate gray color.

DARK_TURQUOISE = Color(0, 0.807843, 0.819608, 1) 🔗

Dark turquoise color.

DARK_VIOLET = Color(0.580392, 0, 0.827451, 1) 🔗

Dark violet color.

DEEP_PINK = Color(1, 0.0784314, 0.576471, 1) 🔗

Deep pink color.

DEEP_SKY_BLUE = Color(0, 0.74902, 1, 1) 🔗

Deep sky blue color.

DIM_GRAY = Color(0.411765, 0.411765, 0.411765, 1) 🔗

Dim gray color.

DODGER_BLUE = Color(0.117647, 0.564706, 1, 1) 🔗

Dodger blue color.

FIREBRICK = Color(0.698039, 0.133333, 0.133333, 1) 🔗

Firebrick color.

FLORAL_WHITE = Color(1, 0.980392, 0.941176, 1) 🔗

Floral white color.

FOREST_GREEN = Color(0.133333, 0.545098, 0.133333, 1) 🔗

Forest green color.

FUCHSIA = Color(1, 0, 1, 1) 🔗

Fuchsia color.

GAINSBORO = Color(0.862745, 0.862745, 0.862745, 1) 🔗

Gainsboro color.

GHOST_WHITE = Color(0.972549, 0.972549, 1, 1) 🔗

Ghost white color.

GOLD = Color(1, 0.843137, 0, 1) 🔗

Gold color.

GOLDENROD = Color(0.854902, 0.647059, 0.12549, 1) 🔗

Goldenrod color.

GRAY = Color(0.745098, 0.745098, 0.745098, 1) 🔗

Gray color.

GREEN = Color(0, 1, 0, 1) 🔗

Green color.

GREEN_YELLOW = Color(0.678431, 1, 0.184314, 1) 🔗

Green yellow color.

HONEYDEW = Color(0.941176, 1, 0.941176, 1) 🔗

Honeydew color.

HOT_PINK = Color(1, 0.411765, 0.705882, 1) 🔗

Hot pink color.

INDIAN_RED = Color(0.803922, 0.360784, 0.360784, 1) 🔗

Indian red color.

INDIGO = Color(0.294118, 0, 0.509804, 1) 🔗

Indigo color.

IVORY = Color(1, 1, 0.941176, 1) 🔗

Ivory color.

KHAKI = Color(0.941176, 0.901961, 0.54902, 1) 🔗

Khaki color.

LAVENDER = Color(0.901961, 0.901961, 0.980392, 1) 🔗

Lavender color.

LAVENDER_BLUSH = Color(1, 0.941176, 0.960784, 1) 🔗

Lavender blush color.

LAWN_GREEN = Color(0.486275, 0.988235, 0, 1) 🔗

Lawn green color.

LEMON_CHIFFON = Color(1, 0.980392, 0.803922, 1) 🔗

Lemon chiffon color.

LIGHT_BLUE = Color(0.678431, 0.847059, 0.901961, 1) 🔗

Light blue color.

LIGHT_CORAL = Color(0.941176, 0.501961, 0.501961, 1) 🔗

Light coral color.

LIGHT_CYAN = Color(0.878431, 1, 1, 1) 🔗

Light cyan color.

LIGHT_GOLDENROD = Color(0.980392, 0.980392, 0.823529, 1) 🔗

Light goldenrod color.

LIGHT_GRAY = Color(0.827451, 0.827451, 0.827451, 1) 🔗

Light gray color.

LIGHT_GREEN = Color(0.564706, 0.933333, 0.564706, 1) 🔗

Light green color.

LIGHT_PINK = Color(1, 0.713726, 0.756863, 1) 🔗

Light pink color.

LIGHT_SALMON = Color(1, 0.627451, 0.478431, 1) 🔗

Light salmon color.

LIGHT_SEA_GREEN = Color(0.12549, 0.698039, 0.666667, 1) 🔗

Light sea green color.

LIGHT_SKY_BLUE = Color(0.529412, 0.807843, 0.980392, 1) 🔗

Light sky blue color.

LIGHT_SLATE_GRAY = Color(0.466667, 0.533333, 0.6, 1) 🔗

Light slate gray color.

LIGHT_STEEL_BLUE = Color(0.690196, 0.768627, 0.870588, 1) 🔗

Light steel blue color.

LIGHT_YELLOW = Color(1, 1, 0.878431, 1) 🔗

Light yellow color.

LIME = Color(0, 1, 0, 1) 🔗

Lime color.

LIME_GREEN = Color(0.196078, 0.803922, 0.196078, 1) 🔗

Lime green color.

LINEN = Color(0.980392, 0.941176, 0.901961, 1) 🔗

Linen color.

MAGENTA = Color(1, 0, 1, 1) 🔗

Magenta color.

MAROON = Color(0.690196, 0.188235, 0.376471, 1) 🔗

Maroon color.

MEDIUM_AQUAMARINE = Color(0.4, 0.803922, 0.666667, 1) 🔗

Medium aquamarine color.

MEDIUM_BLUE = Color(0, 0, 0.803922, 1) 🔗

Medium blue color.

MEDIUM_ORCHID = Color(0.729412, 0.333333, 0.827451, 1) 🔗

Medium orchid color.

MEDIUM_PURPLE = Color(0.576471, 0.439216, 0.858824, 1) 🔗

Medium purple color.

MEDIUM_SEA_GREEN = Color(0.235294, 0.701961, 0.443137, 1) 🔗

Medium sea green color.

MEDIUM_SLATE_BLUE = Color(0.482353, 0.407843, 0.933333, 1) 🔗

Medium slate blue color.

MEDIUM_SPRING_GREEN = Color(0, 0.980392, 0.603922, 1) 🔗

Medium spring green color.

MEDIUM_TURQUOISE = Color(0.282353, 0.819608, 0.8, 1) 🔗

Medium turquoise color.

MEDIUM_VIOLET_RED = Color(0.780392, 0.0823529, 0.521569, 1) 🔗

Medium violet red color.

MIDNIGHT_BLUE = Color(0.0980392, 0.0980392, 0.439216, 1) 🔗

Midnight blue color.

MINT_CREAM = Color(0.960784, 1, 0.980392, 1) 🔗

Mint cream color.

MISTY_ROSE = Color(1, 0.894118, 0.882353, 1) 🔗

Misty rose color.

MOCCASIN = Color(1, 0.894118, 0.709804, 1) 🔗

Moccasin color.

NAVAJO_WHITE = Color(1, 0.870588, 0.678431, 1) 🔗

Navajo white color.

NAVY_BLUE = Color(0, 0, 0.501961, 1) 🔗

Navy blue color.

OLD_LACE = Color(0.992157, 0.960784, 0.901961, 1) 🔗

Old lace color.

OLIVE = Color(0.501961, 0.501961, 0, 1) 🔗

Olive color.

OLIVE_DRAB = Color(0.419608, 0.556863, 0.137255, 1) 🔗

Olive drab color.

ORANGE = Color(1, 0.647059, 0, 1) 🔗

Orange color.

ORANGE_RED = Color(1, 0.270588, 0, 1) 🔗

Orange red color.

ORCHID = Color(0.854902, 0.439216, 0.839216, 1) 🔗

Orchid color.

PALE_GOLDENROD = Color(0.933333, 0.909804, 0.666667, 1) 🔗

Pale goldenrod color.

PALE_GREEN = Color(0.596078, 0.984314, 0.596078, 1) 🔗

Pale green color.

PALE_TURQUOISE = Color(0.686275, 0.933333, 0.933333, 1) 🔗

Pale turquoise color.

PALE_VIOLET_RED = Color(0.858824, 0.439216, 0.576471, 1) 🔗

Pale violet red color.

PAPAYA_WHIP = Color(1, 0.937255, 0.835294, 1) 🔗

Papaya whip color.

PEACH_PUFF = Color(1, 0.854902, 0.72549, 1) 🔗

Peach puff color.

PERU = Color(0.803922, 0.521569, 0.247059, 1) 🔗

Peru color.

PINK = Color(1, 0.752941, 0.796078, 1) 🔗

Pink color.

PLUM = Color(0.866667, 0.627451, 0.866667, 1) 🔗

Plum color.

POWDER_BLUE = Color(0.690196, 0.878431, 0.901961, 1) 🔗

Powder blue color.

PURPLE = Color(0.627451, 0.12549, 0.941176, 1) 🔗

Purple color.

REBECCA_PURPLE = Color(0.4, 0.2, 0.6, 1) 🔗

Rebecca purple color.

RED = Color(1, 0, 0, 1) 🔗

Red color.

ROSY_BROWN = Color(0.737255, 0.560784, 0.560784, 1) 🔗

Rosy brown color.

ROYAL_BLUE = Color(0.254902, 0.411765, 0.882353, 1) 🔗

Royal blue color.

SADDLE_BROWN = Color(0.545098, 0.270588, 0.0745098, 1) 🔗

Saddle brown color.

SALMON = Color(0.980392, 0.501961, 0.447059, 1) 🔗

Salmon color.

SANDY_BROWN = Color(0.956863, 0.643137, 0.376471, 1) 🔗

Sandy brown color.

SEA_GREEN = Color(0.180392, 0.545098, 0.341176, 1) 🔗

Sea green color.

SEASHELL = Color(1, 0.960784, 0.933333, 1) 🔗

Seashell color.

SIENNA = Color(0.627451, 0.321569, 0.176471, 1) 🔗

Sienna color.

SILVER = Color(0.752941, 0.752941, 0.752941, 1) 🔗

Silver color.

SKY_BLUE = Color(0.529412, 0.807843, 0.921569, 1) 🔗

Sky blue color.

SLATE_BLUE = Color(0.415686, 0.352941, 0.803922, 1) 🔗

Slate blue color.

SLATE_GRAY = Color(0.439216, 0.501961, 0.564706, 1) 🔗

Slate gray color.

SNOW = Color(1, 0.980392, 0.980392, 1) 🔗

Snow color.

SPRING_GREEN = Color(0, 1, 0.498039, 1) 🔗

Spring green color.

STEEL_BLUE = Color(0.27451, 0.509804, 0.705882, 1) 🔗

Steel blue color.

TAN = Color(0.823529, 0.705882, 0.54902, 1) 🔗

Tan color.

TEAL = Color(0, 0.501961, 0.501961, 1) 🔗

Teal color.

THISTLE = Color(0.847059, 0.74902, 0.847059, 1) 🔗

Thistle color.

TOMATO = Color(1, 0.388235, 0.278431, 1) 🔗

Tomato color.

TRANSPARENT = Color(1, 1, 1, 0) 🔗

Transparent color (white with zero alpha).

TURQUOISE = Color(0.25098, 0.878431, 0.815686, 1) 🔗

Turquoise color.

VIOLET = Color(0.933333, 0.509804, 0.933333, 1) 🔗

Violet color.

WEB_GRAY = Color(0.501961, 0.501961, 0.501961, 1) 🔗

Web gray color.

WEB_GREEN = Color(0, 0.501961, 0, 1) 🔗

Web green color.

WEB_MAROON = Color(0.501961, 0, 0, 1) 🔗

Web maroon color.

WEB_PURPLE = Color(0.501961, 0, 0.501961, 1) 🔗

Web purple color.

WHEAT = Color(0.960784, 0.870588, 0.701961, 1) 🔗

Wheat color.

WHITE = Color(1, 1, 1, 1) 🔗

White color.

WHITE_SMOKE = Color(0.960784, 0.960784, 0.960784, 1) 🔗

White smoke color.

YELLOW = Color(1, 1, 0, 1) 🔗

Yellow color.

YELLOW_GREEN = Color(0.603922, 0.803922, 0.196078, 1) 🔗

Yellow green color.


Property Descriptions

float a = 1.0 🔗

The color's alpha component, typically on the range of 0 to 1. A value of 0 means that the color is fully transparent. A value of 1 means that the color is fully opaque.


int a8 = 255 🔗

Wrapper for a that uses the range 0 to 255, instead of 0 to 1.


float b = 0.0 🔗

The color's blue component, typically on the range of 0 to 1.


int b8 = 0 🔗

Wrapper for b that uses the range 0 to 255, instead of 0 to 1.


float g = 0.0 🔗

The color's green component, typically on the range of 0 to 1.


int g8 = 0 🔗

Wrapper for g that uses the range 0 to 255, instead of 0 to 1.


float h = 0.0 🔗

The HSV hue of this color, on the range 0 to 1.


float ok_hsl_h = 0.0 🔗

The OKHSL hue of this color, on the range 0 to 1.


float ok_hsl_l = 0.0 🔗

The OKHSL lightness of this color, on the range 0 to 1.


float ok_hsl_s = 0.0 🔗

The OKHSL saturation of this color, on the range 0 to 1.


float r = 0.0 🔗

The color's red component, typically on the range of 0 to 1.


int r8 = 0 🔗

Wrapper for r that uses the range 0 to 255, instead of 0 to 1.


float s = 0.0 🔗

The HSV saturation of this color, on the range 0 to 1.


float v = 0.0 🔗

The HSV value (brightness) of this color, on the range 0 to 1.


Constructor Descriptions

Color Color() 🔗

Constructs a default Color from opaque black. This is the same as BLACK.

Note: In C#, this constructs a Color with all of its components set to 0.0 (transparent black).


Color Color(from: Color, alpha: float)

Constructs a Color from the existing color, with a set to the given alpha value.

var red = Color(Color.RED, 0.2) # 20% opaque red.

Color Color(from: Color)

Constructs a Color as a copy of the given Color.


Color Color(code: String)

Constructs a Color either from an HTML color code or from a standardized color name. The supported color names are the same as the constants.


Color Color(code: String, alpha: float)

Constructs a Color either from an HTML color code or from a standardized color name, with alpha on the range of 0.0 to 1.0. The supported color names are the same as the constants.


Color Color(r: float, g: float, b: float)

Constructs a Color from RGB values, typically between 0.0 and 1.0. a is set to 1.0.

var color = Color(0.2, 1.0, 0.7) # Similar to `Color8(51, 255, 178, 255)`

Color Color(r: float, g: float, b: float, a: float)

Constructs a Color from RGBA values, typically between 0.0 and 1.0.

var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to `Color8(51, 255, 178, 204)`

Method Descriptions

Color blend(over: Color) const 🔗

Returns a new color resulting from overlaying this color over the given color. In a painting program, you can imagine it as the over color painted over this color (including alpha).

var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50%
var fg = Color(1.0, 0.0, 0.0, 0.5) # Red with alpha of 50%
var blended_color = bg.blend(fg) # Brown with alpha of 75%

Color clamp(min: Color = Color(0, 0, 0, 0), max: Color = Color(1, 1, 1, 1)) const 🔗

Returns a new color with all components clamped between the components of min and max, by running @GlobalScope.clamp on each component.


Color darkened(amount: float) const 🔗

Returns a new color resulting from making this color darker by the specified amount (ratio from 0.0 to 1.0). See also lightened.

var green = Color(0.0, 1.0, 0.0)
var darkgreen = green.darkened(0.2) # 20% darker than regular green

Color from_hsv(h: float, s: float, v: float, alpha: float = 1.0) static 🔗

Constructs a color from an HSV profile. The hue (h), saturation (s), and value (v) are typically between 0.0 and 1.0.

var color = Color.from_hsv(0.58, 0.5, 0.79, 0.8)

Color from_ok_hsl(h: float, s: float, l: float, alpha: float = 1.0) static 🔗

Constructs a color from an OK HSL profile. The hue (h), saturation (s), and lightness (l) are typically between 0.0 and 1.0.

var color = Color.from_ok_hsl(0.58, 0.5, 0.79, 0.8)

Color from_rgbe9995(rgbe: int) static 🔗

Decodes a Color from an RGBE9995 format integer. See Image.FORMAT_RGBE9995.


Color from_string(str: String, default: Color) static 🔗

Creates a Color from the given string, which can be either an HTML color code or a named color (case-insensitive). Returns default if the color cannot be inferred from the string.

If you want to create a color from String in a constant expression, use the equivalent constructor instead (i.e. Color("color string")).


float get_luminance() const 🔗

Returns the light intensity of the color, as a value between 0.0 and 1.0 (inclusive). This is useful when determining light or dark color. Colors with a luminance smaller than 0.5 can be generally considered dark.

Note: get_luminance relies on the color being in the linear color space to return an accurate relative luminance value. If the color is in the sRGB color space, use srgb_to_linear to convert it to the linear color space first.


Color hex(hex: int) static 🔗

Returns the Color associated with the provided hex integer in 32-bit RGBA format (8 bits per channel). This method is the inverse of to_rgba32.

In GDScript and C#, the int is best visualized with hexadecimal notation ("0x" prefix, making it "0xRRGGBBAA").

var red = Color.hex(0xff0000ff)
var dark_cyan = Color.hex(0x008b8bff)
var my_color = Color.hex(0xbbefd2a4)

If you want to use hex notation in a constant expression, use the equivalent constructor instead (i.e. Color(0xRRGGBBAA)).


Color hex64(hex: int) static 🔗

Returns the Color associated with the provided hex integer in 64-bit RGBA format (16 bits per channel). This method is the inverse of to_rgba64.

In GDScript and C#, the int is best visualized with hexadecimal notation ("0x" prefix, making it "0xRRRRGGGGBBBBAAAA").


Color html(rgba: String) static 🔗

Returns a new color from rgba, an HTML hexadecimal color string. rgba is not case-sensitive, and may be prefixed by a hash sign (#).

rgba must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If rgba does not contain an alpha channel value, an alpha channel value of 1.0 is applied. If rgba is invalid, returns an empty color.

var blue = Color.html("#0000ff") # blue is Color(0.0, 0.0, 1.0, 1.0)
var green = Color.html("#0F0")   # green is Color(0.0, 1.0, 0.0, 1.0)
var col = Color.html("663399cc") # col is Color(0.4, 0.2, 0.6, 0.8)

bool html_is_valid(color: String) static 🔗

Returns true if color is a valid HTML hexadecimal color string. The string must be a hexadecimal value (case-insensitive) of either 3, 4, 6 or 8 digits, and may be prefixed by a hash sign (#). This method is identical to String.is_valid_html_color.

Color.html_is_valid("#55aaFF")   # Returns true
Color.html_is_valid("#55AAFF20") # Returns true
Color.html_is_valid("55AAFF")    # Returns true
Color.html_is_valid("#F2C")      # Returns true

Color.html_is_valid("#AABBC")    # Returns false
Color.html_is_valid("#55aaFF5")  # Returns false

Color inverted() const 🔗

Returns the color with its r, g, and b components inverted ((1 - r, 1 - g, 1 - b, a)).

var black = Color.WHITE.inverted()
var color = Color(0.3, 0.4, 0.9)
var inverted_color = color.inverted() # Equivalent to `Color(0.7, 0.6, 0.1)`

bool is_equal_approx(to: Color) const 🔗

Returns true if this color and to are approximately equal, by running @GlobalScope.is_equal_approx on each component.


Color lerp(to: Color, weight: float) const 🔗

Returns the linear interpolation between this color's components and to's components. The interpolation factor weight should be between 0.0 and 1.0 (inclusive). See also @GlobalScope.lerp.

var red = Color(1.0, 0.0, 0.0)
var aqua = Color(0.0, 1.0, 0.8)

red.lerp(aqua, 0.2) # Returns Color(0.8, 0.2, 0.16)
red.lerp(aqua, 0.5) # Returns Color(0.5, 0.5, 0.4)
red.lerp(aqua, 1.0) # Returns Color(0.0, 1.0, 0.8)

Color lightened(amount: float) const 🔗

Returns a new color resulting from making this color lighter by the specified amount, which should be a ratio from 0.0 to 1.0. See also darkened.

var green = Color(0.0, 1.0, 0.0)
var light_green = green.lightened(0.2) # 20% lighter than regular green

Color linear_to_srgb() const 🔗

Returns the color converted to the sRGB color space. This method assumes the original color is in the linear color space. See also srgb_to_linear which performs the opposite operation.


Color srgb_to_linear() const 🔗

Returns the color converted to the linear color space. This method assumes the original color already is in the sRGB color space. See also linear_to_srgb which performs the opposite operation.


int to_abgr32() const 🔗

Returns the color converted to a 32-bit integer in ABGR format (each component is 8 bits). ABGR is the reversed version of the default RGBA format.

var color = Color(1, 0.5, 0.2)
print(color.to_abgr32()) # Prints 4281565439

int to_abgr64() const 🔗

Returns the color converted to a 64-bit integer in ABGR format (each component is 16 bits). ABGR is the reversed version of the default RGBA format.

var color = Color(1, 0.5, 0.2)
print(color.to_abgr64()) # Prints -225178692812801

int to_argb32() const 🔗

Returns the color converted to a 32-bit integer in ARGB format (each component is 8 bits). ARGB is more compatible with DirectX.

var color = Color(1, 0.5, 0.2)
print(color.to_argb32()) # Prints 4294934323

int to_argb64() const 🔗

Returns the color converted to a 64-bit integer in ARGB format (each component is 16 bits). ARGB is more compatible with DirectX.

var color = Color(1, 0.5, 0.2)
print(color.to_argb64()) # Prints -2147470541

String to_html(with_alpha: bool = true) const 🔗

Returns the color converted to an HTML hexadecimal color String in RGBA format, without the hash (#) prefix.

Setting with_alpha to false, excludes alpha from the hexadecimal string, using RGB format instead of RGBA format.

var white = Color(1, 1, 1, 0.5)
var with_alpha = white.to_html() # Returns "ffffff7f"
var without_alpha = white.to_html(false) # Returns "ffffff"

int to_rgba32() const 🔗

Returns the color converted to a 32-bit integer in RGBA format (each component is 8 bits). RGBA is Redot's default format. This method is the inverse of hex.

var color = Color(1, 0.5, 0.2)
print(color.to_rgba32()) # Prints 4286526463

int to_rgba64() const 🔗

Returns the color converted to a 64-bit integer in RGBA format (each component is 16 bits). RGBA is Redot's default format. This method is the inverse of hex64.

var color = Color(1, 0.5, 0.2)
print(color.to_rgba64()) # Prints -140736629309441

Operator Descriptions

bool operator !=(right: Color) 🔗

Returns true if the colors are not exactly equal.

Note: Due to floating-point precision errors, consider using is_equal_approx instead, which is more reliable.


Color operator *(right: Color) 🔗

Multiplies each component of the Color by the components of the given Color.


Color operator *(right: float) 🔗

Multiplies each component of the Color by the given float.


Color operator *(right: int) 🔗

Multiplies each component of the Color by the given int.


Color operator +(right: Color) 🔗

Adds each component of the Color with the components of the given Color.


Color operator -(right: Color) 🔗

Subtracts each component of the Color by the components of the given Color.


Color operator /(right: Color) 🔗

Divides each component of the Color by the components of the given Color.


Color operator /(right: float) 🔗

Divides each component of the Color by the given float.


Color operator /(right: int) 🔗

Divides each component of the Color by the given int.


bool operator ==(right: Color) 🔗

Returns true if the colors are exactly equal.

Note: Due to floating-point precision errors, consider using is_equal_approx instead, which is more reliable.


float operator [](index: int) 🔗

Access color components using their index. [0] is equivalent to r, [1] is equivalent to g, [2] is equivalent to b, and [3] is equivalent to a.


Color operator unary+() 🔗

Returns the same value as if the + was not there. Unary + does nothing, but sometimes it can make your code more readable.


Color operator unary-() 🔗

Inverts the given color. This is equivalent to Color.WHITE - c or Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a). Unlike with inverted, the a component is inverted, too.