Files
nothoughts/node_modules/pixi.js/lib/rendering/renderers/shared/background/BackgroundSystem.d.ts
2025-08-04 18:57:35 +02:00

83 lines
3.2 KiB
TypeScript

import { Color } from '../../../../color/Color';
import { ExtensionType } from '../../../../extensions/Extensions';
import type { ColorSource, RgbaArray } from '../../../../color/Color';
import type { System } from '../system/System';
/**
* Options for the background system.
* @property {ColorSource} [backgroundColor='black']
* The background color used to clear the canvas. See {@link ColorSource} for accepted color values.
* @property {ColorSource} [background] - Alias for backgroundColor
* @property {number} [backgroundAlpha=1] -
* Transparency of the background color, value from `0` (fully transparent) to `1` (fully opaque).
* @property {boolean} [clearBeforeRender=true] - Whether to clear the canvas before new render passes.
* @memberof rendering
*/
export interface BackgroundSystemOptions {
/**
* The background color used to clear the canvas. See {@link ColorSource} for accepted color values.
* @memberof rendering.SharedRendererOptions
* @default 'black'
*/
backgroundColor: ColorSource;
/**
* Alias for backgroundColor
* @memberof rendering.SharedRendererOptions
*/
background?: ColorSource;
/**
* Transparency of the background color, value from `0` (fully transparent) to `1` (fully opaque).
* @memberof rendering.SharedRendererOptions
* @default 1
*/
backgroundAlpha: number;
/**
* Whether to clear the canvas before new render passes.
* @memberof rendering.SharedRendererOptions
* @default true
*/
clearBeforeRender: boolean;
}
/**
* The background system manages the background color and alpha of the main view.
* @memberof rendering
*/
export declare class BackgroundSystem implements System<BackgroundSystemOptions> {
/** @ignore */
static extension: {
readonly type: readonly [ExtensionType.WebGLSystem, ExtensionType.WebGPUSystem, ExtensionType.CanvasSystem];
readonly name: "background";
readonly priority: 0;
};
/** default options used by the system */
static defaultOptions: BackgroundSystemOptions;
/**
* This sets if the CanvasRenderer will clear the canvas or not before the new render pass.
* If the scene is NOT transparent PixiJS will use a canvas sized fillRect operation every
* frame to set the canvas background color. If the scene is transparent PixiJS will use clearRect
* to clear the canvas every frame. Disable this by setting this to false. For example, if
* your game has a canvas filling background image you often don't need this set.
*/
clearBeforeRender: boolean;
private readonly _backgroundColor;
constructor();
/**
* initiates the background system
* @param options - the options for the background colors
*/
init(options: BackgroundSystemOptions): void;
/** The background color to fill if not transparent */
get color(): Color;
set color(value: ColorSource);
/** The background color alpha. Setting this to 0 will make the canvas transparent. */
get alpha(): number;
set alpha(value: number);
/** The background color as an [R, G, B, A] array. */
get colorRgba(): RgbaArray;
/**
* destroys the background system
* @internal
* @ignore
*/
destroy(): void;
}