The Phaser.Color class is a set of static methods that assist in color manipulation and conversion.
Adds the source and backdrop colors together and returns the value, up to a maximum of 255.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Takes the average of the source and backdrop colors.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Darkens the backdrop color to reflect the source color.
Painting with white produces no change.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Brightens the backdrop color to reflect the source color.
Painting with black produces no change.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Selects the darker of the backdrop and source colors.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Subtracts the darker of the two constituent colors from the lighter.
Painting with white inverts the backdrop color; painting with black produces no change.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Produces an effect similar to that of the Difference mode, but lower in contrast.
Painting with white inverts the backdrop color; painting with black produces no change.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Glow blend mode. This mode is a variation of reflect mode with the source and backdrop colors swapped.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Multiplies or screens the colors, depending on the source color value.
If the source color is lighter than 0.5, the backdrop is lightened, as if it were screened;
this is useful for adding highlights to a scene.
If the source color is darker than 0.5, the backdrop is darkened, as if it were multiplied;
this is useful for adding shadows to a scene.
The degree of lightening or darkening is proportional to the difference between the source color and 0.5;
if it is equal to 0.5, the backdrop is unchanged.
Painting with pure black or white produces pure black or white. The effect is similar to shining a harsh spotlight on the backdrop.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Runs blendVividLight on the source and backdrop colors.
If the resulting color is 128 or more, it receives a value of 255; if less than 128, a value of 0.
Therefore, all blended pixels have red, green, and blue channel values of either 0 or 255.
This changes all pixels to primary additive colors (red, green, or blue), white, or black.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Selects the lighter of the backdrop and source colors.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
An alias for blendSubtract, it simply sums the values of the two colors and subtracts 255.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
An alias for blendAdd, it simply sums the values of the two colors.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
This blend mode combines Linear Dodge and Linear Burn (rescaled so that neutral colors become middle gray).
Dodge applies to values of top layer lighter than middle gray, and burn to darker values.
The calculation simplifies to the sum of bottom layer and twice the top layer, subtract 128. The contrast decreases.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Multiplies the backdrop and source color values.
The result color is always at least as dark as either of the two constituent
colors. Multiplying any color with black produces black;
multiplying with white leaves the original color unchanged.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Negation blend mode.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Blends the source color, ignoring the backdrop.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Multiplies or screens the colors, depending on the backdrop color.
Source colors overlay the backdrop while preserving its highlights and shadows.
The backdrop color is not replaced, but is mixed with the source color to reflect the lightness or darkness of the backdrop.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Phoenix blend mode. This subtracts the lighter color from the darker color, and adds 255, giving a bright result.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
If the backdrop color (light source) is lighter than 50%, the blendDarken mode is used, and colors lighter than the backdrop color do not change.
If the backdrop color is darker than 50% gray, colors lighter than the blend color are replaced, and colors darker than the blend color do not change.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Reflect blend mode. This mode is useful when adding shining objects or light zones to images.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Multiplies the complements of the backdrop and source color values, then complements the result.
The result color is always at least as light as either of the two constituent colors.
Screening any color with white produces white; screening with black leaves the original color unchanged.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Darkens or lightens the colors, depending on the source color value.
If the source color is lighter than 0.5, the backdrop is lightened, as if it were dodged;
this is useful for adding highlights to a scene.
If the source color is darker than 0.5, the backdrop is darkened, as if it were burned in.
The degree of lightening or darkening is proportional to the difference between the source color and 0.5;
if it is equal to 0.5, the backdrop is unchanged.
Painting with pure black or white produces a distinctly darker or lighter area, but does not result in pure black or white.
The effect is similar to shining a diffused spotlight on the backdrop.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Combines the source and backdrop colors and returns their value minus 255.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
This blend mode combines Color Dodge and Color Burn (rescaled so that neutral colors become middle gray).
Dodge applies when values in the top layer are lighter than middle gray, and burn to darker values.
The middle gray is the neutral color. When color is lighter than this, this effectively moves the white point of the bottom
layer down by twice the difference; when it is darker, the black point is moved up by twice the difference. The perceived contrast increases.
Name | Type | Description |
---|---|---|
a | integer | The source color to blend, in the range 1 to 255. |
b | integer | The backdrop color to blend, in the range 1 to 255. |
The blended color value, in the range 1 to 255.
Return a string containing a hex representation of the given color component.
Name | Type | Description |
---|---|---|
color | number | The color channel to get the hex value for, must be a value between 0 and 255. |
A string of length 2 characters, i.e. 255 = ff, 100 = 64.
A utility function to create a lightweight 'color' object with the default components.
Any components that are not specified will default to zero.
This is useful when you want to use a shared color object for the getPixel and getPixelAt methods.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
r | number | <optional> | 0 | The red color component, in the range 0 - 255. |
g | number | <optional> | 0 | The green color component, in the range 0 - 255. |
b | number | <optional> | 0 | The blue color component, in the range 0 - 255. |
a | number | <optional> | 1 | The alpha color component, in the range 0 - 1. |
h | number | <optional> | 0 | The hue, in the range 0 - 1. |
s | number | <optional> | 0 | The saturation, in the range 0 - 1. |
l | number | <optional> | 0 | The lightness, in the range 0 - 1. |
v | number | <optional> | 0 | The value, in the range 0 - 1. |
The resulting object with r, g, b, a properties and h, s, l and v.
A utility to convert an integer in 0xRRGGBBAA format to a color object.
This does not rely on endianness.
Name | Type | Argument | Description |
---|---|---|---|
rgba | number | An RGBA hex | |
out | object | <optional> | The object to use, optional. |
A color object.
Given a native color value (in the format 0xAARRGGBB) this will return the Alpha component, as a value between 0 and 255.
Name | Type | Description |
---|---|---|
color | number | In the format 0xAARRGGBB. |
The Alpha component of the color, will be between 0 and 1 (0 being no Alpha (opaque), 1 full Alpha (transparent)).
Given a native color value (in the format 0xAARRGGBB) this will return the Alpha component as a value between 0 and 1.
Name | Type | Description |
---|---|---|
color | number | In the format 0xAARRGGBB. |
The Alpha component of the color, will be between 0 and 1 (0 being no Alpha (opaque), 1 full Alpha (transparent)).
Given a native color value (in the format 0xAARRGGBB) this will return the Blue component, as a value between 0 and 255.
Name | Type | Description |
---|---|---|
color | number | In the format 0xAARRGGBB. |
The Blue component of the color, will be between 0 and 255 (0 being no color, 255 full Blue).
Given 3 color values this will return an integer representation of it.
Name | Type | Description |
---|---|---|
r | number | The red color component, in the range 0 - 255. |
g | number | The green color component, in the range 0 - 255. |
b | number | The blue color component, in the range 0 - 255. |
A native color value integer (format: 0xRRGGBB).
Given an alpha and 3 color values this will return an integer representation of it.
Name | Type | Description |
---|---|---|
a | number | The alpha color component, in the range 0 - 255. |
r | number | The red color component, in the range 0 - 255. |
g | number | The green color component, in the range 0 - 255. |
b | number | The blue color component, in the range 0 - 255. |
A native color value integer (format: 0xAARRGGBB).
Given a native color value (in the format 0xAARRGGBB) this will return the Green component, as a value between 0 and 255.
Name | Type | Description |
---|---|---|
color | number | In the format 0xAARRGGBB. |
The Green component of the color, will be between 0 and 255 (0 being no color, 255 full Green).
Returns a random color value between black and white
Set the min value to start each channel from the given offset.
Set the max value to restrict the maximum color used per channel.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
min | number | <optional> | 0 | The lowest value to use for the color. |
max | number | <optional> | 255 | The highest value to use for the color. |
alpha | number | <optional> | 255 | The alpha value of the returning color (default 255 = fully opaque). |
32-bit color value with alpha.
Given a native color value (in the format 0xAARRGGBB) this will return the Red component, as a value between 0 and 255.
Name | Type | Description |
---|---|---|
color | number | In the format 0xAARRGGBB. |
The Red component of the color, will be between 0 and 255 (0 being no color, 255 full Red).
Return the component parts of a color as an Object with the properties alpha, red, green, blue.
Alpha will only be set if it exist in the given color (0xAARRGGBB)
Name | Type | Description |
---|---|---|
color | number | Color in RGB (0xRRGGBB) or ARGB format (0xAARRGGBB). |
An Object with properties: alpha, red, green, blue (also r, g, b and a). Alpha will only be present if a color value > 16777215 was given.
Returns a CSS friendly string value from the given color.
Name | Type | Description |
---|---|---|
color | number | Object | Color in RGB (0xRRGGBB), ARGB format (0xAARRGGBB) or an Object with r, g, b, a properties. |
A string in the format: 'rgba(r,g,b,a)'
Converts a hex string into a Phaser Color object.
The hex string can supplied as '#0033ff'
or the short-hand format of '#03f'
; it can begin with an optional "#" or "0x", or be unprefixed.
An alpha channel is not supported.
Name | Type | Argument | Description |
---|---|---|---|
hex | string | The color string in a hex format. | |
out | object | <optional> | An object into which 3 properties will be created or set: r, g and b. If not provided a new object will be created. |
An object with the red, green and blue values set in the r, g and b properties.
Converts a hex string into an integer color value.
Name | Type | Description |
---|---|---|
hex | string | The hex string to convert. Can be in the short-hand format |
The rgb color value in the format 0xAARRGGBB.
Get HSL color wheel values in an array which will be 360 elements in size.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
s | number | <optional> | 0.5 | The saturation, in the range 0 - 1. |
l | number | <optional> | 0.5 | The lightness, in the range 0 - 1. |
An array containing 360 elements corresponding to the HSL color wheel.
Converts an HSL (hue, saturation and lightness) color value to RGB.
Conversion forumla from http://en.wikipedia.org/wiki/HSL_color_space.
Assumes HSL values are contained in the set [0, 1] and returns r, g and b values in the set [0, 255].
Based on code by Michael Jackson (https://github.com/mjijackson)
Name | Type | Argument | Description |
---|---|---|---|
h | number | The hue, in the range 0 - 1. | |
s | number | The saturation, in the range 0 - 1. | |
l | number | The lightness, in the range 0 - 1. | |
out | object | <optional> | An object into which 3 properties will be created: r, g and b. If not provided a new object will be created. |
An object with the red, green and blue values set in the r, g and b properties.
Get HSV color wheel values in an array which will be 360 elements in size.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
s | number | <optional> | 1 | The saturation, in the range 0 - 1. |
v | number | <optional> | 1 | The value, in the range 0 - 1. |
An array containing 360 elements corresponding to the HSV color wheel.
Converts an HSV (hue, saturation and value) color value to RGB.
Conversion forumla from http://en.wikipedia.org/wiki/HSL_color_space.
Assumes HSV values are contained in the set [0, 1] and returns r, g and b values in the set [0, 255].
Based on code by Michael Jackson (https://github.com/mjijackson)
Name | Type | Argument | Description |
---|---|---|---|
h | number | The hue, in the range 0 - 1. | |
s | number | The saturation, in the range 0 - 1. | |
v | number | The value, in the range 0 - 1. | |
out | object | <optional> | An object into which 3 properties will be created: r, g and b. If not provided a new object will be created. |
An object with the red, green and blue values set in the r, g and b properties.
Converts a hue to an RGB color.
Based on code by Michael Jackson (https://github.com/mjijackson)
Name | Type | Description |
---|---|---|
p | number | |
q | number | |
t | number |
The color component value.
Interpolates the two given colours based on the supplied step and currentStep properties.
Name | Type | Description |
---|---|---|
color1 | number | The first color value. |
color2 | number | The second color value. |
steps | number | The number of steps to run the interpolation over. |
currentStep | number | The currentStep value. If the interpolation will take 100 steps, a currentStep value of 50 would be half-way between the two. |
alpha | number | The alpha of the returned color. |
The interpolated color value.
Interpolates the two given colours based on the supplied step and currentStep properties.
Name | Type | Description |
---|---|---|
color | number | The first color value. |
r | number | The red color value, between 0 and 0xFF (255). |
g | number | The green color value, between 0 and 0xFF (255). |
b | number | The blue color value, between 0 and 0xFF (255). |
steps | number | The number of steps to run the interpolation over. |
currentStep | number | The currentStep value. If the interpolation will take 100 steps, a currentStep value of 50 would be half-way between the two. |
The interpolated color value.
Interpolates the two given colours based on the supplied step and currentStep properties.
Name | Type | Description |
---|---|---|
r1 | number | The red color value, between 0 and 0xFF (255). |
g1 | number | The green color value, between 0 and 0xFF (255). |
b1 | number | The blue color value, between 0 and 0xFF (255). |
r2 | number | The red color value, between 0 and 0xFF (255). |
g2 | number | The green color value, between 0 and 0xFF (255). |
b2 | number | The blue color value, between 0 and 0xFF (255). |
steps | number | The number of steps to run the interpolation over. |
currentStep | number | The currentStep value. If the interpolation will take 100 steps, a currentStep value of 50 would be half-way between the two. |
The interpolated color value.
Packs the r, g, b, a components into a single integer, for use with Int32Array.
If device is little endian then ABGR order is used. Otherwise RGBA order is used.
Name | Type | Description |
---|---|---|
r | number | The red color component, in the range 0 - 255. |
g | number | The green color component, in the range 0 - 255. |
b | number | The blue color component, in the range 0 - 255. |
a | number | The alpha color component, in the range 0 - 255. |
The packed color as uint32
Converts an RGB color value to HSL (hue, saturation and lightness).
Conversion forumla from http://en.wikipedia.org/wiki/HSL_color_space.
Assumes RGB values are contained in the set [0, 255] and returns h, s and l in the set [0, 1].
Based on code by Michael Jackson (https://github.com/mjijackson)
Name | Type | Argument | Description |
---|---|---|---|
r | number | The red color component, in the range 0 - 255. | |
g | number | The green color component, in the range 0 - 255. | |
b | number | The blue color component, in the range 0 - 255. | |
out | object | <optional> | An object into which 3 properties will be created, h, s and l. If not provided a new object will be created. |
An object with the hue, saturation and lightness values set in the h, s and l properties.
Converts an RGB color value to HSV (hue, saturation and value).
Conversion forumla from http://en.wikipedia.org/wiki/HSL_color_space.
Assumes RGB values are contained in the set [0, 255] and returns h, s and v in the set [0, 1].
Based on code by Michael Jackson (https://github.com/mjijackson)
Name | Type | Argument | Description |
---|---|---|---|
r | number | The red color component, in the range 0 - 255. | |
g | number | The green color component, in the range 0 - 255. | |
b | number | The blue color component, in the range 0 - 255. | |
out | object | <optional> | An object into which 3 properties will be created, h, s and v. If not provided a new object will be created. |
An object with the hue, saturation and value set in the h, s and v properties.
Converts the given color values into a string.
If prefix was '#' it will be in the format #RRGGBB
otherwise 0xAARRGGBB
.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
r | number | The red color component, in the range 0 - 255. | ||
g | number | The green color component, in the range 0 - 255. | ||
b | number | The blue color component, in the range 0 - 255. | ||
a | number | <optional> | 255 | The alpha color component, in the range 0 - 255. |
prefix | string | <optional> | '#' | The prefix used in the return string. If '#' it will return |
A string containing the color values. If prefix was '#' it will be in the format #RRGGBB
otherwise 0xAARRGGBB
.
Converts RGBA components to a 32 bit integer in AABBGGRR format.
Name | Type | Description |
---|---|---|
r | number | The red color component, in the range 0 - 255. |
g | number | The green color component, in the range 0 - 255. |
b | number | The blue color component, in the range 0 - 255. |
a | number | The alpha color component, in the range 0 - 255. |
A RGBA-packed 32 bit integer
A utility to convert RGBA components to a 32 bit integer in RRGGBBAA format.
Name | Type | Description |
---|---|---|
r | number | The red color component, in the range 0 - 255. |
g | number | The green color component, in the range 0 - 255. |
b | number | The blue color component, in the range 0 - 255. |
a | number | The alpha color component, in the range 0 - 255. |
A RGBA-packed 32 bit integer
Unpacks the r, g, b, a components into the specified color object, or a new
object, for use with Int32Array. If little endian, then ABGR order is used when
unpacking, otherwise, RGBA order is used. The resulting color object has ther, g, b, a
properties which are unrelated to endianness.
Note that the integer is assumed to be packed in the correct endianness. On little-endian
the format is 0xAABBGGRR and on big-endian the format is 0xRRGGBBAA. If you want a
endian-independent method, use fromRGBA(rgba) and toRGBA(r, g, b, a).
Name | Type | Argument | Default | Description |
---|---|---|---|---|
rgba | number | The integer, packed in endian order by packPixel. | ||
out | object | <optional> | An object into which 3 properties will be created: r, g and b. If not provided a new object will be created. | |
hsl | boolean | <optional> | false | Also convert the rgb values into hsl? |
hsv | boolean | <optional> | false | Also convert the rgb values into hsv? |
An object with the red, green and blue values set in the r, g and b properties.
Takes a color object and updates the rgba, color and color32 properties.
Name | Type | Description |
---|---|---|
out | object | The color object to update. |
A native color value integer (format: 0xAARRGGBB).
Converts a value - a "hex" string, a "CSS 'web' string", or a number - into red, green, blue, and alpha components.
The value can be a string (see hexToColor
and webToColor
for the supported formats) or a packed integer (see getRGB
).
An alpha channel is not supported when specifying a hex string.
Name | Type | Argument | Description |
---|---|---|---|
value | string | number | The color expressed as a recognized string format or a packed integer. | |
out | object | <optional> | The object to use for the output. If not provided a new object will be created. |
The (out
) object with the red, green, blue, and alpha values set as the r/g/b/a properties.
Converts a CSS 'web' string into a Phaser Color object.
The web string can be in the format 'rgb(r,g,b)'
or 'rgba(r,g,b,a)'
where r/g/b are in the range [0..255] and a is in the range [0..1].
Name | Type | Argument | Description |
---|---|---|---|
web | string | The color string in CSS 'web' format. | |
out | object | <optional> | An object into which 4 properties will be created: r, g, b and a. If not provided a new object will be created. |
An object with the red, green, blue and alpha values set in the r, g, b and a properties.
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Color.html