UNPKG

@pixi/core

Version:
53 lines (50 loc) 1.68 kB
import { Color } from '@pixi/color'; import { MSAA_QUALITY, MIPMAP_MODES } from '@pixi/constants'; import { Framebuffer } from '../framebuffer/Framebuffer.mjs'; import { BaseTexture } from '../textures/BaseTexture.mjs'; class BaseRenderTexture extends BaseTexture { constructor(options = {}) { if (typeof options === "number") { const width = arguments[0]; const height = arguments[1]; const scaleMode = arguments[2]; const resolution = arguments[3]; options = { width, height, scaleMode, resolution }; } options.width = options.width || 100; options.height = options.height || 100; options.multisample ?? (options.multisample = MSAA_QUALITY.NONE); super(null, options); this.mipmap = MIPMAP_MODES.OFF; this.valid = true; this._clear = new Color([0, 0, 0, 0]); this.framebuffer = new Framebuffer(this.realWidth, this.realHeight).addColorTexture(0, this); this.framebuffer.multisample = options.multisample; this.maskStack = []; this.filterStack = [{}]; } set clearColor(value) { this._clear.setValue(value); } get clearColor() { return this._clear.value; } get clear() { return this._clear; } resize(desiredWidth, desiredHeight) { this.framebuffer.resize(desiredWidth * this.resolution, desiredHeight * this.resolution); this.setRealSize(this.framebuffer.width, this.framebuffer.height); } dispose() { this.framebuffer.dispose(); super.dispose(); } destroy() { super.destroy(); this.framebuffer.destroyDepthTexture(); this.framebuffer = null; } } export { BaseRenderTexture }; //# sourceMappingURL=BaseRenderTexture.mjs.map