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">

43 lines (39 loc) 1.52 kB
'use strict'; var Extensions = require('../../../../../extensions/Extensions.js'); var TextureSource = require('./TextureSource.js'); "use strict"; class BufferImageSource extends TextureSource.TextureSource { constructor(options) { const buffer = options.resource || new Float32Array(options.width * options.height * 4); let format = options.format; if (!format) { if (buffer instanceof Float32Array) { format = "rgba32float"; } else if (buffer instanceof Int32Array) { format = "rgba32uint"; } else if (buffer instanceof Uint32Array) { format = "rgba32uint"; } else if (buffer instanceof Int16Array) { format = "rgba16uint"; } else if (buffer instanceof Uint16Array) { format = "rgba16uint"; } else if (buffer instanceof Int8Array) { format = "bgra8unorm"; } else { format = "bgra8unorm"; } } super({ ...options, resource: buffer, format }); this.uploadMethodId = "buffer"; } static test(resource) { return resource instanceof Int8Array || resource instanceof Uint8Array || resource instanceof Uint8ClampedArray || resource instanceof Int16Array || resource instanceof Uint16Array || resource instanceof Int32Array || resource instanceof Uint32Array || resource instanceof Float32Array; } } BufferImageSource.extension = Extensions.ExtensionType.TextureSource; exports.BufferImageSource = BufferImageSource; //# sourceMappingURL=BufferImageSource.js.map