shadow$provide.module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$renderTarget$RenderTarget = function(global, require, module, exports) { var uid = require("module$node_modules$pixi_DOT_js$lib$utils$data$uid"), TextureSource = require("module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$sources$TextureSource"), Texture = require("module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$texture$Texture"); "use strict"; const node_modules$pixi_DOT_js$lib$rendering$renderers$shared$renderTarget$RenderTarget$classdecl$var21 = class { constructor(descriptor = {}) { this.uid = uid.uid("renderTarget"); this.colorTextures = []; this.dirtyId = 0; this.isRoot = !1; this._size = new Float32Array(2); this._managedColorTextures = !1; descriptor = {...node_modules$pixi_DOT_js$lib$rendering$renderers$shared$renderTarget$RenderTarget$classdecl$var21.defaultOptions, ...descriptor}; this.stencil = descriptor.stencil; this.depth = descriptor.depth; this.isRoot = descriptor.isRoot; if ("number" === typeof descriptor.colorTextures) { this._managedColorTextures = !0; for (var i = 0; i < descriptor.colorTextures; i++) { this.colorTextures.push(new TextureSource.TextureSource({width:descriptor.width, height:descriptor.height, resolution:descriptor.resolution, antialias:descriptor.antialias})); } } else { this.colorTextures = [...descriptor.colorTextures.map(texture => texture.source)], i = this.colorTexture.source, this.resize(i.width, i.height, i._resolution); } this.colorTexture.source.on("resize", this.onSourceResize, this); if (descriptor.depthStencilTexture || this.stencil) { descriptor.depthStencilTexture instanceof Texture.Texture || descriptor.depthStencilTexture instanceof TextureSource.TextureSource ? this.depthStencilTexture = descriptor.depthStencilTexture.source : this.ensureDepthStencilTexture(); } } get size() { const _size = this._size; _size[0] = this.pixelWidth; _size[1] = this.pixelHeight; return _size; } get width() { return this.colorTexture.source.width; } get height() { return this.colorTexture.source.height; } get pixelWidth() { return this.colorTexture.source.pixelWidth; } get pixelHeight() { return this.colorTexture.source.pixelHeight; } get resolution() { return this.colorTexture.source._resolution; } get colorTexture() { return this.colorTextures[0]; } onSourceResize(source) { this.resize(source.width, source.height, source._resolution, !0); } ensureDepthStencilTexture() { this.depthStencilTexture || (this.depthStencilTexture = new TextureSource.TextureSource({width:this.width, height:this.height, resolution:this.resolution, format:"depth24plus-stencil8", autoGenerateMipmaps:!1, antialias:!1, mipLevelCount:1})); } resize(width, height, resolution = this.resolution, skipColorTexture = !1) { this.dirtyId++; this.colorTextures.forEach((colorTexture, i) => { skipColorTexture && 0 === i || colorTexture.source.resize(width, height, resolution); }); this.depthStencilTexture && this.depthStencilTexture.source.resize(width, height, resolution); } destroy() { this.colorTexture.source.off("resize", this.onSourceResize, this); this._managedColorTextures && this.colorTextures.forEach(texture => { texture.destroy(); }); this.depthStencilTexture && (this.depthStencilTexture.destroy(), delete this.depthStencilTexture); } }; global = node_modules$pixi_DOT_js$lib$rendering$renderers$shared$renderTarget$RenderTarget$classdecl$var21; global.defaultOptions = {width:0, height:0, resolution:1, colorTextures:1, stencil:!1, depth:!1, antialias:!1, isRoot:!1}; exports.RenderTarget = global; }; //# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$rendering$renderers$shared$renderTarget$RenderTarget.js.map