Engine API Reference - v2.6.1
    Preparing search index...

    Class Color

    An RGBA color.

    Each color component is a floating point value in the range 0 to 1. The r (red), g (green) and b (blue) components define a color in RGB color space. The a (alpha) component defines transparency. An alpha of 1 is fully opaque. An alpha of 0 is fully transparent.

    Index

    Constructors

    • Create a new Color object.

      Parameters

      • Optionalr: number | number[] = 0

        The value of the red component (0-1). Defaults to 0. If r is an array of length 3 or 4, the array will be used to populate all components.

      • Optionalg: number = 0

        The value of the green component (0-1). Defaults to 0.

      • Optionalb: number = 0

        The value of the blue component (0-1). Defaults to 0.

      • Optionala: number = 1

        The value of the alpha component (0-1). Defaults to 1.

      Returns Color

    Properties

    a: number

    The alpha component of the color.

    b: number

    The blue component of the color.

    g: number

    The green component of the color.

    r: number

    The red component of the color.

    BLACK: Color = ...

    A constant color set to black [0, 0, 0, 1].

    BLUE: Color = ...

    A constant color set to blue [0, 0, 1, 1].

    CYAN: Color = ...

    A constant color set to cyan [0, 1, 1, 1].

    GRAY: Color = ...

    A constant color set to gray [0.5, 0.5, 0.5, 1].

    GREEN: Color = ...

    A constant color set to green [0, 1, 0, 1].

    MAGENTA: Color = ...

    A constant color set to magenta [1, 0, 1, 1].

    RED: Color = ...

    A constant color set to red [1, 0, 0, 1].

    WHITE: Color = ...

    A constant color set to white [1, 1, 1, 1].

    YELLOW: Color = ...

    A constant color set to yellow [1, 1, 0, 1].

    Methods

    • Copies the contents of a source color to a destination color.

      Parameters

      • rhs: Color

        A color to copy to the specified color.

      Returns Color

      Self for chaining.

      const src = new pc.Color(1, 0, 0, 1);
      const dst = new pc.Color();

      dst.copy(src);

      console.log("The two colors are " + (dst.equals(src) ? "equal" : "different"));
    • Reports whether two colors are equal.

      Parameters

      • rhs: Color

        The color to compare to the specified color.

      Returns boolean

      True if the colors are equal and false otherwise.

      const a = new pc.Color(1, 0, 0, 1);
      const b = new pc.Color(1, 1, 0, 1);
      console.log("The two colors are " + (a.equals(b) ? "equal" : "different"));
    • Set the values of the vector from an array.

      Parameters

      • arr: number[]

        The array to set the vector values from.

      • Optionaloffset: number = 0

        The zero-based index at which to start copying elements from the array. Default is 0.

      Returns Color

      Self for chaining.

      const c = new pc.Color();
      c.fromArray([1, 0, 1, 1]);
      // c is set to [1, 0, 1, 1]
    • Set the values of the color from a string representation '#11223344' or '#112233'.

      Parameters

      • hex: string

        A string representation in the format '#RRGGBBAA' or '#RRGGBB'. Where RR, GG, BB, AA are red, green, blue and alpha values. This is the same format used in HTML/CSS.

      Returns Color

      Self for chaining.

    • Converts the color from linear to gamma color space.

      Parameters

      • Optionalsrc: Color = ...

        The color to convert to gamma color space. If not set, the operation is done in place.

      Returns Color

      Self for chaining.

    • Returns the result of a linear interpolation between two specified colors.

      Parameters

      • lhs: Color

        The color to interpolate from.

      • rhs: Color

        The color to interpolate to.

      • alpha: number

        The value controlling the point of interpolation. Between 0 and 1, the linear interpolant will occur on a straight line between lhs and rhs. Outside of this range, the linear interpolant will occur on a ray extrapolated from this line.

      Returns Color

      Self for chaining.

      const a = new pc.Color(0, 0, 0);
      const b = new pc.Color(1, 1, 0.5);
      const r = new pc.Color();

      r.lerp(a, b, 0); // r is equal to a
      r.lerp(a, b, 0.5); // r is 0.5, 0.5, 0.25
      r.lerp(a, b, 1); // r is equal to b
    • Converts the color from gamma to linear color space.

      Parameters

      • Optionalsrc: Color = ...

        The color to convert to linear color space. If not set, the operation is done in place.

      Returns Color

      Self for chaining.

    • Multiplies RGB elements of a Color by a number. Note that the alpha value is left unchanged.

      Parameters

      • scalar: number

        The number to multiply by.

      Returns Color

      Self for chaining.

    • Assign values to the color components, including alpha.

      Parameters

      • r: number

        The value for red (0-1).

      • g: number

        The value for blue (0-1).

      • b: number

        The value for green (0-1).

      • Optionala: number = 1

        The value for the alpha (0-1), defaults to 1.

      Returns Color

      Self for chaining.

    • Converts the color to an array of numbers.

      Parameters

      • Optionalarr: number[] = []

        The array to populate with the color components. If not specified, a new array is created. Default is true.

      • Optionaloffset: number = 0

        The zero-based index at which to start copying elements to the array. Default is 0.

      • Optionalalpha: boolean = true

        If true, the output array will include the alpha value.

      Returns number[]

      The color as an array of numbers.

      const c = new pc.Color(1, 1, 1);
      // Outputs [1, 1, 1, 1]
      console.log(c.toArray());
    • Converts the color to string form. The format is '#RRGGBBAA', where RR, GG, BB, AA are the red, green, blue and alpha values. When the alpha value is not included (the default), this is the same format as used in HTML/CSS.

      Parameters

      • alpha: boolean

        If true, the output string will include the alpha value.

      • OptionalasArray: boolean

        If true, the output will be an array of numbers. Defaults to false.

      Returns string

      The color in string form.

      const c = new pc.Color(1, 1, 1);
      // Outputs #ffffffff
      console.log(c.toString());