UNPKG

openfl

Version:

A fast, productive library for 2D cross-platform development.

177 lines (157 loc) 6.66 kB
declare namespace openfl.display { /** * A class that provides constant values for visual blend mode effects. These * constants are used in the following: * * * The `blendMode` property of the * openfl.display.DisplayObject class. * * The `blendMode` parameter of the `draw()` * method of the openfl.display.BitmapData class * */ export enum BlendMode { /** * Adds the values of the constituent colors of the display object to the * colors of its background, applying a ceiling of 0xFF. This setting is * commonly used for animating a lightening dissolve between two objects. * * For example, if the display object has a pixel with an RGB value of * 0xAAA633, and the background pixel has an RGB value of 0xDD2200, the * resulting RGB value for the displayed pixel is 0xFFC833(because 0xAA + * 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8, and 0x33 + 0x00 = 0x33). */ ADD = "add", /** * Applies the alpha value of each pixel of the display object to the * background. This requires the `blendMode` property of the * parent display object be set to * `openfl.display.BlendMode.LAYER`. * * Not supported under GPU rendering. */ ALPHA = "alpha", /** * Selects the darker of the constituent colors of the display object and the * colors of the background(the colors with the smaller values). This * setting is commonly used for superimposing type. * * For example, if the display object has a pixel with an RGB value of * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the * resulting RGB value for the displayed pixel is 0xDDCC00(because 0xFF > * 0xDD, 0xCC < 0xF8, and 0x33 > 0x00 = 33). * * Not supported under GPU rendering. */ DARKEN = "darken", /** * Compares the constituent colors of the display object with the colors of * its background, and subtracts the darker of the values of the two * constituent colors from the lighter value. This setting is commonly used * for more vibrant colors. * * For example, if the display object has a pixel with an RGB value of * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the * resulting RGB value for the displayed pixel is 0x222C33(because 0xFF - * 0xDD = 0x22, 0xF8 - 0xCC = 0x2C, and 0x33 - 0x00 = 0x33). */ DIFFERENCE = "difference", /** * Erases the background based on the alpha value of the display object. This * process requires that the `blendMode` property of the parent * display object be set to `openfl.display.BlendMode.LAYER`. * * Not supported under GPU rendering. */ ERASE = "erase", /** * Adjusts the color of each pixel based on the darkness of the display * object. If the display object is lighter than 50% gray, the display object * and background colors are screened, which results in a lighter color. If * the display object is darker than 50% gray, the colors are multiplied, * which results in a darker color. This setting is commonly used for shading * effects. * * Not supported under GPU rendering. */ HARDLIGHT = "hardlight", /** * Inverts the background. */ INVERT = "invert", /** * Forces the creation of a transparency group for the display object. This * means that the display object is precomposed in a temporary buffer before * it is processed further. The precomposition is done automatically if the * display object is precached by means of bitmap caching or if the display * object is a display object container that has at least one child object * with a `blendMode` setting other than `"normal"`. * * Not supported under GPU rendering. */ LAYER = "layer", /** * Selects the lighter of the constituent colors of the display object and * the colors of the background(the colors with the larger values). This * setting is commonly used for superimposing type. * * For example, if the display object has a pixel with an RGB value of * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the * resulting RGB value for the displayed pixel is 0xFFF833(because 0xFF > * 0xDD, 0xCC < 0xF8, and 0x33 > 0x00 = 33). * * Not supported under GPU rendering. */ LIGHTEN = "lighten", /** * Multiplies the values of the display object constituent colors by the * constituent colors of the background color, and normalizes by dividing by * 0xFF, resulting in darker colors. This setting is commonly used for * shadows and depth effects. * * For example, if a constituent color(such as red) of one pixel in the * display object and the corresponding color of the pixel in the background * both have the value 0x88, the multiplied result is 0x4840. Dividing by * 0xFF yields a value of 0x48 for that constituent color, which is a darker * shade than the color of the display object or the color of the * background. */ MULTIPLY = "multiply", /** * The display object appears in front of the background. Pixel values of the * display object override the pixel values of the background. Where the * display object is transparent, the background is visible. */ NORMAL = "normal", /** * Adjusts the color of each pixel based on the darkness of the background. * If the background is lighter than 50% gray, the display object and * background colors are screened, which results in a lighter color. If the * background is darker than 50% gray, the colors are multiplied, which * results in a darker color. This setting is commonly used for shading * effects. * * Not supported under GPU rendering. */ OVERLAY = "overlay", /** * Multiplies the complement(inverse) of the display object color by the * complement of the background color, resulting in a bleaching effect. This * setting is commonly used for highlights or to remove black areas of the * display object. */ SCREEN = "screen", SHADER = "shader", /** * Subtracts the values of the constituent colors in the display object from * the values of the background color, applying a floor of 0. This setting is * commonly used for animating a darkening dissolve between two objects. * * For example, if the display object has a pixel with an RGB value of * 0xAA2233, and the background pixel has an RGB value of 0xDDA600, the * resulting RGB value for the displayed pixel is 0x338400(because 0xDD - * 0xAA = 0x33, 0xA6 - 0x22 = 0x84, and 0x00 - 0x33 < 0x00). */ SUBTRACT = "subtract" } } export default openfl.display.BlendMode;