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

1 lines 8.5 kB
{"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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"}