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

28 lines
1.0 KiB
TypeScript

import { ExtensionType } from '../../../extensions/Extensions';
import { STENCIL_MODES } from '../shared/state/const';
import type { RenderTarget } from '../shared/renderTarget/RenderTarget';
import type { System } from '../shared/system/System';
import type { WebGLRenderer } from './WebGLRenderer';
/**
* This manages the stencil buffer. Used primarily for masking
* @memberof rendering
*/
export declare class GlStencilSystem implements System {
/** @ignore */
static extension: {
readonly type: readonly [ExtensionType.WebGLSystem];
readonly name: "stencil";
};
private _gl;
private readonly _stencilCache;
private _renderTargetStencilState;
private _stencilOpsMapping;
private _comparisonFuncMapping;
private _activeRenderTarget;
constructor(renderer: WebGLRenderer);
protected contextChange(gl: WebGLRenderingContext): void;
protected onRenderTargetChange(renderTarget: RenderTarget): void;
setStencilMode(stencilMode: STENCIL_MODES, stencilReference: number): void;
destroy?: () => void;
}