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 (35 loc) 1.27 kB
import { uniformParsers } from '../../rendering/renderers/shared/shader/utils/uniformParsers.mjs'; import { uniformParserFunctions, uniformSingleParserFunctions, uniformArrayParserFunctions } from './uniformSyncFunctions.mjs'; "use strict"; function generateUniformsSyncPolyfill(group, uniformData) { const functionMap = {}; for (const i in group.uniformStructures) { if (!uniformData[i]) continue; const uniform = group.uniformStructures[i]; let parsed = false; for (let j = 0; j < uniformParsers.length; j++) { const parser = uniformParsers[j]; if (uniform.type === parser.type && parser.test(uniform)) { functionMap[i] = uniformParserFunctions[j]; parsed = true; break; } } if (!parsed) { const templateType = uniform.size === 1 ? uniformSingleParserFunctions : uniformArrayParserFunctions; functionMap[i] = templateType[uniform.type]; } } return (ud, uv, renderer) => { const gl = renderer.gl; for (const i in functionMap) { const v = uv[i]; const cu = ud[i]; const cv = ud[i].value; functionMap[i](i, cu, cv, v, ud, uv, gl); } }; } export { generateUniformsSyncPolyfill }; //# sourceMappingURL=generateUniformsSyncPolyfill.mjs.map