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">
1 lines • 8.21 kB
Source Map (JSON)
{"version":3,"file":"particleUpdateFunctions.mjs","sources":["../../../src/unsafe-eval/particle/particleUpdateFunctions.ts"],"sourcesContent":["import type { IParticle } from '../../scene/particle-container/shared/Particle';\n\n/** @internal */\nexport const particleUpdateFunctions = {\n aVertex: (ps: IParticle[], f32v: Float32Array, _u32v: Uint32Array, offset: number, stride: number) =>\n {\n let w0 = 0;\n let w1 = 0;\n let h0 = 0;\n let h1 = 0;\n\n for (let i = 0; i < ps.length; ++i)\n {\n const p = ps[i];\n const texture = p.texture;\n const sx = p.scaleX;\n const sy = p.scaleY;\n const ax = p.anchorX;\n const ay = p.anchorY;\n\n const trim = texture.trim;\n const orig = texture.orig;\n\n if (trim)\n {\n w1 = trim.x - (ax * orig.width);\n w0 = w1 + trim.width;\n\n h1 = trim.y - (ay * orig.height);\n h0 = h1 + trim.height;\n }\n else\n {\n w0 = (orig.width) * (1 - ax);\n w1 = (orig.width) * -ax;\n\n h0 = orig.height * (1 - ay);\n h1 = orig.height * -ay;\n }\n\n f32v[offset] = w1 * sx;\n f32v[offset + 1] = h1 * sy;\n\n f32v[offset + stride] = w0 * sx;\n f32v[offset + stride + 1] = h1 * sy;\n\n f32v[offset + (stride * 2)] = w0 * sx;\n f32v[offset + (stride * 2) + 1] = h0 * sy;\n\n f32v[offset + (stride * 3)] = w1 * sx;\n f32v[offset + (stride * 3) + 1] = h0 * sy;\n\n offset += stride * 4;\n }\n },\n aPosition: (ps: IParticle[], f32v: Float32Array, _u32v: Uint32Array, offset: number, stride: number) =>\n {\n for (let i = 0; i < ps.length; ++i)\n {\n const p = ps[i];\n const x = p.x;\n const y = p.y;\n\n f32v[offset] = x;\n f32v[offset + 1] = y;\n\n f32v[offset + stride] = x;\n f32v[offset + stride + 1] = y;\n\n f32v[offset + (stride * 2)] = x;\n f32v[offset + (stride * 2) + 1] = y;\n\n f32v[offset + (stride * 3)] = x;\n f32v[offset + (stride * 3) + 1] = y;\n\n offset += stride * 4;\n }\n },\n aRotation: (ps: IParticle[], f32v: Float32Array, _u32v: Uint32Array, offset: number, stride: number) =>\n {\n for (let i = 0; i < ps.length; ++i)\n {\n const rotation = ps[i].rotation;\n\n f32v[offset] = rotation;\n f32v[offset + stride] = rotation;\n f32v[offset + (stride * 2)] = rotation;\n f32v[offset + (stride * 3)] = rotation;\n\n offset += stride * 4;\n }\n },\n aUV: (ps: IParticle[], f32v: Float32Array, _u32v: Uint32Array, offset: number, stride: number) =>\n {\n for (let i = 0; i < ps.length; ++i)\n {\n const uvs = ps[i].texture.uvs;\n\n f32v[offset] = uvs.x0;\n f32v[offset + 1] = uvs.y0;\n\n f32v[offset + stride] = uvs.x1;\n f32v[offset + stride + 1] = uvs.y1;\n\n f32v[offset + (stride * 2)] = uvs.x2;\n f32v[offset + (stride * 2) + 1] = uvs.y2;\n\n f32v[offset + (stride * 3)] = uvs.x3;\n f32v[offset + (stride * 3) + 1] = uvs.y3;\n\n offset += stride * 4;\n }\n },\n aColor: (ps: IParticle[], _f32v: Float32Array, u32v: Uint32Array, offset: number, stride: number) =>\n {\n for (let i = 0; i < ps.length; ++i)\n {\n const c = ps[i].color;\n\n u32v[offset] = c;\n u32v[offset + stride] = c;\n u32v[offset + (stride * 2)] = c;\n u32v[offset + (stride * 3)] = c;\n\n offset += stride * 4;\n }\n }\n};\n"],"names":[],"mappings":"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"}