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

38 lines (34 loc) 1.14 kB
'use strict'; var basis_worker = require('../../../_virtual/basis.worker.js'); var setBasisTranscoderPath = require('../utils/setBasisTranscoderPath.js'); "use strict"; let basisWorker; const urlHash = {}; function getBasisWorker(supportedTextures) { if (!basisWorker) { basisWorker = new basis_worker.default().worker; basisWorker.onmessage = (messageEvent) => { const { success, url, textureOptions } = messageEvent.data; if (!success) { console.warn("Failed to load Basis texture", url); } urlHash[url](textureOptions); }; basisWorker.postMessage({ type: "init", jsUrl: setBasisTranscoderPath.basisTranscoderUrls.jsUrl, wasmUrl: setBasisTranscoderPath.basisTranscoderUrls.wasmUrl, supportedTextures }); } return basisWorker; } function loadBasisOnWorker(url, supportedTextures) { const ktxWorker = getBasisWorker(supportedTextures); return new Promise((resolve) => { urlHash[url] = resolve; ktxWorker.postMessage({ type: "load", url }); }); } exports.loadBasisOnWorker = loadBasisOnWorker; //# sourceMappingURL=loadBasisOnWorker.js.map