UNPKG

pixi.js

Version:

<p align="center"> <a href="https://pixijs.com" target="_blank" rel="noopener noreferrer"> <img height="150" src="https://files.pixijs.download/branding/pixijs-logo-transparent-dark.svg?v=1" alt="PixiJS logo"> </a> </p> <br/> <p align="center">

50 lines (46 loc) 1.39 kB
'use strict'; var Extensions = require('../../../extensions/Extensions.js'); var State = require('../../../rendering/renderers/shared/state/State.js'); var GCManagedHash = require('../../../utils/data/GCManagedHash.js'); "use strict"; class CanvasGraphicsPipe { constructor(renderer, adaptor) { this.state = State.State.for2d(); this.renderer = renderer; this._adaptor = adaptor; this.renderer.runners.contextChange.add(this); this._managedGraphics = new GCManagedHash.GCManagedHash({ renderer, type: "renderable", priority: -1, name: "graphics" }); } contextChange() { this._adaptor.contextChange(this.renderer); } validateRenderable(_graphics) { return false; } addRenderable(graphics, instructionSet) { this._managedGraphics.add(graphics); this.renderer.renderPipes.batch.break(instructionSet); instructionSet.add(graphics); } updateRenderable(_graphics) { } execute(graphics) { if (!graphics.isRenderable) return; this._adaptor.execute(this, graphics); } destroy() { this._managedGraphics.destroy(); this.renderer = null; this._adaptor.destroy(); this._adaptor = null; } } /** @ignore */ CanvasGraphicsPipe.extension = { type: [ Extensions.ExtensionType.CanvasPipes ], name: "graphics" }; exports.CanvasGraphicsPipe = CanvasGraphicsPipe; //# sourceMappingURL=CanvasGraphicsPipe.js.map