@cazala/party 0.1.0-next.45.433a20a → 0.1.0-next.46.59ce407
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -13
- package/dist/engine.d.ts +8 -2
- package/dist/engine.d.ts.map +1 -1
- package/dist/index.js +382 -7
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +45 -2
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/runtimes/cpu/engine.d.ts +9 -2
- package/dist/runtimes/cpu/engine.d.ts.map +1 -1
- package/dist/runtimes/webgpu/engine.d.ts +9 -2
- package/dist/runtimes/webgpu/engine.d.ts.map +1 -1
- package/dist/runtimes/webgpu/gpu-resources.d.ts +5 -0
- package/dist/runtimes/webgpu/gpu-resources.d.ts.map +1 -1
- package/dist/runtimes/webgpu/local-query.d.ts +26 -0
- package/dist/runtimes/webgpu/local-query.d.ts.map +1 -0
- package/dist/runtimes/webgpu/particle-store.d.ts +12 -1
- package/dist/runtimes/webgpu/particle-store.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/interfaces.d.ts
CHANGED
|
@@ -19,6 +19,22 @@ export interface IParticle {
|
|
|
19
19
|
a: number;
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
+
export type ParticleQuery = {
|
|
23
|
+
index: number;
|
|
24
|
+
position: {
|
|
25
|
+
x: number;
|
|
26
|
+
y: number;
|
|
27
|
+
};
|
|
28
|
+
size: number;
|
|
29
|
+
mass: number;
|
|
30
|
+
};
|
|
31
|
+
export type GetParticlesInRadiusOptions = {
|
|
32
|
+
maxResults?: number;
|
|
33
|
+
};
|
|
34
|
+
export type GetParticlesInRadiusResult = {
|
|
35
|
+
particles: ParticleQuery[];
|
|
36
|
+
truncated: boolean;
|
|
37
|
+
};
|
|
22
38
|
export interface IEngine {
|
|
23
39
|
initialize(): Promise<void>;
|
|
24
40
|
play(): void;
|
|
@@ -39,10 +55,31 @@ export interface IEngine {
|
|
|
39
55
|
};
|
|
40
56
|
setZoom(z: number): void;
|
|
41
57
|
getZoom(): number;
|
|
42
|
-
addParticle(p: IParticle):
|
|
58
|
+
addParticle(p: IParticle): number;
|
|
59
|
+
/**
|
|
60
|
+
* Set a particle at an existing index without reallocating the whole list.
|
|
61
|
+
* Intended for tool/undo operations; avoids full-scene readbacks on WebGPU.
|
|
62
|
+
*/
|
|
63
|
+
setParticle(index: number, p: IParticle): void;
|
|
64
|
+
/**
|
|
65
|
+
* Fast path to "remove" (mass=0) or pin/unpin (mass<0 / mass>0) without
|
|
66
|
+
* fetching all particles.
|
|
67
|
+
*/
|
|
68
|
+
setParticleMass(index: number, mass: number): void;
|
|
43
69
|
setParticles(p: IParticle[]): void;
|
|
44
70
|
getParticles(): Promise<IParticle[]>;
|
|
45
71
|
getParticle(index: number): Promise<IParticle>;
|
|
72
|
+
/**
|
|
73
|
+
* Fetch particles near a region for local occupancy queries (Brush/Pin/Remove tools).
|
|
74
|
+
* Implementations should avoid full-scene GPU->CPU readbacks when possible.
|
|
75
|
+
*
|
|
76
|
+
* Semantics: returns particles whose discs intersect the query circle, i.e.
|
|
77
|
+
* `distance(center, p.position) <= radius + p.size`.
|
|
78
|
+
*/
|
|
79
|
+
getParticlesInRadius(center: {
|
|
80
|
+
x: number;
|
|
81
|
+
y: number;
|
|
82
|
+
}, radius: number, opts?: GetParticlesInRadiusOptions): Promise<GetParticlesInRadiusResult>;
|
|
46
83
|
clear(): void;
|
|
47
84
|
getCount(): number;
|
|
48
85
|
getFPS(): number;
|
|
@@ -138,10 +175,16 @@ export declare abstract class AbstractEngine implements IEngine {
|
|
|
138
175
|
abstract initialize(): Promise<void>;
|
|
139
176
|
abstract destroy(): Promise<void>;
|
|
140
177
|
abstract setSize(width: number, height: number): void;
|
|
141
|
-
abstract addParticle(p: IParticle):
|
|
178
|
+
abstract addParticle(p: IParticle): number;
|
|
179
|
+
abstract setParticle(index: number, p: IParticle): void;
|
|
180
|
+
abstract setParticleMass(index: number, mass: number): void;
|
|
142
181
|
abstract setParticles(p: IParticle[]): void;
|
|
143
182
|
abstract getParticles(): Promise<IParticle[]>;
|
|
144
183
|
abstract getParticle(index: number): Promise<IParticle>;
|
|
184
|
+
abstract getParticlesInRadius(center: {
|
|
185
|
+
x: number;
|
|
186
|
+
y: number;
|
|
187
|
+
}, radius: number, opts?: GetParticlesInRadiusOptions): Promise<GetParticlesInRadiusResult>;
|
|
145
188
|
abstract clear(): void;
|
|
146
189
|
abstract getCount(): number;
|
|
147
190
|
protected abstract startAnimationLoop(): void;
|
package/dist/interfaces.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE;QACL,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACX,CAAC;CACH;AAED,MAAM,WAAW,OAAO;IACtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,IAAI,IAAI,CAAC;IACb,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,IAAI,IAAI,CAAC;IACb,MAAM,IAAI,IAAI,CAAC;IACf,SAAS,IAAI,OAAO,CAAC;IACrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,OAAO,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,SAAS,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,IAAI,MAAM,CAAC;IAClB,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { AbstractEngine, IParticle } from "../../interfaces";
|
|
1
|
+
import { AbstractEngine, GetParticlesInRadiusOptions, GetParticlesInRadiusResult, IParticle } from "../../interfaces";
|
|
2
2
|
import { Module } from "../../module";
|
|
3
3
|
export declare class CPUEngine extends AbstractEngine {
|
|
4
4
|
private particles;
|
|
5
5
|
private canvas;
|
|
6
6
|
private grid;
|
|
7
7
|
private animationId;
|
|
8
|
+
private particleIdToIndex;
|
|
8
9
|
constructor(options: {
|
|
9
10
|
canvas: HTMLCanvasElement;
|
|
10
11
|
forces: Module[];
|
|
@@ -41,9 +42,15 @@ export declare class CPUEngine extends AbstractEngine {
|
|
|
41
42
|
protected getEffectiveCount(): number;
|
|
42
43
|
setSize(width: number, height: number): void;
|
|
43
44
|
setParticles(particle: IParticle[]): void;
|
|
44
|
-
addParticle(particle: IParticle):
|
|
45
|
+
addParticle(particle: IParticle): number;
|
|
46
|
+
setParticle(index: number, p: IParticle): void;
|
|
47
|
+
setParticleMass(index: number, mass: number): void;
|
|
45
48
|
getParticles(): Promise<IParticle[]>;
|
|
46
49
|
getParticle(index: number): Promise<IParticle>;
|
|
50
|
+
getParticlesInRadius(center: {
|
|
51
|
+
x: number;
|
|
52
|
+
y: number;
|
|
53
|
+
}, radius: number, opts?: GetParticlesInRadiusOptions): Promise<GetParticlesInRadiusResult>;
|
|
47
54
|
destroy(): Promise<void>;
|
|
48
55
|
protected onClearColorChanged(): void;
|
|
49
56
|
protected onCellSizeChanged(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/runtimes/cpu/engine.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/runtimes/cpu/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,2BAA2B,EAC3B,0BAA0B,EAC1B,SAAS,EAEV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,MAAM,EAKP,MAAM,cAAc,CAAC;AAKtB,qBAAa,SAAU,SAAQ,cAAc;IAC3C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,iBAAiB,CAAkC;gBAE/C,OAAO,EAAE;QACnB,MAAM,EAAE,iBAAiB,CAAC;QAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,UAAU,CAAC,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAUD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAQpC,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAOnC;;;OAGG;IACI,WAAW,IAAI,IAAI;IAI1B;;;;;;;;OAQG;IACI,KAAK,IAAI,IAAI;IAapB,KAAK,IAAI,IAAI;IASb,QAAQ,IAAI,MAAM;IAQlB,SAAS,CAAC,iBAAiB,IAAI,MAAM;IAKrC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAK5C,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI;IAUzC,WAAW,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM;IAUxC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,GAAG,IAAI;IAQ9C,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAMlD,YAAY,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAIpC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIxC,oBAAoB,CACxB,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAChC,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,2BAA2B,GACjC,OAAO,CAAC,0BAA0B,CAAC;IAyCtC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IASxB,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAKrC,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAKnC,SAAS,CAAC,4BAA4B,IAAI,IAAI;IAK9C,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAIvC,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAIvC,OAAO,CAAC,OAAO,CAab;IAEF,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAoCpB,OAAO,CAAC,MAAM;IA0Od,OAAO,CAAC,iBAAiB;IAwCzB,OAAO,CAAC,MAAM;CAgHf"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* - Present the final texture to the canvas, tracking an EMA FPS estimate
|
|
16
16
|
*/
|
|
17
17
|
import type { Module } from "../../module";
|
|
18
|
-
import { AbstractEngine, IParticle } from "../../interfaces";
|
|
18
|
+
import { AbstractEngine, GetParticlesInRadiusOptions, GetParticlesInRadiusResult, IParticle } from "../../interfaces";
|
|
19
19
|
export declare class WebGPUEngine extends AbstractEngine {
|
|
20
20
|
private resources;
|
|
21
21
|
private particles;
|
|
@@ -29,6 +29,7 @@ export declare class WebGPUEngine extends AbstractEngine {
|
|
|
29
29
|
private shouldSyncNextTick;
|
|
30
30
|
private animationId;
|
|
31
31
|
private didSwapchainWarmup;
|
|
32
|
+
private localQuery;
|
|
32
33
|
constructor(options: {
|
|
33
34
|
canvas: HTMLCanvasElement;
|
|
34
35
|
forces: Module[];
|
|
@@ -52,13 +53,19 @@ export declare class WebGPUEngine extends AbstractEngine {
|
|
|
52
53
|
setSize(width: number, height: number): void;
|
|
53
54
|
protected onViewChanged(): void;
|
|
54
55
|
setParticles(p: IParticle[]): void;
|
|
55
|
-
addParticle(p: IParticle):
|
|
56
|
+
addParticle(p: IParticle): number;
|
|
57
|
+
setParticle(index: number, p: IParticle): void;
|
|
58
|
+
setParticleMass(index: number, mass: number): void;
|
|
56
59
|
/**
|
|
57
60
|
* Forces GPU-to-CPU synchronization and returns current particle data.
|
|
58
61
|
* Use this when you need the most up-to-date particle positions from GPU.
|
|
59
62
|
*/
|
|
60
63
|
getParticles(): Promise<IParticle[]>;
|
|
61
64
|
getParticle(index: number): Promise<IParticle>;
|
|
65
|
+
getParticlesInRadius(center: {
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
}, radius: number, opts?: GetParticlesInRadiusOptions): Promise<GetParticlesInRadiusResult>;
|
|
62
69
|
getCount(): number;
|
|
63
70
|
clear(): void;
|
|
64
71
|
private animate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,6 +76,11 @@ export declare class GPUResources {
|
|
|
76
76
|
* Reads particle data back from GPU to CPU
|
|
77
77
|
*/
|
|
78
78
|
readParticleBuffer(sizeFloats: number): Promise<Float32Array>;
|
|
79
|
+
/**
|
|
80
|
+
* Read an arbitrary GPUBuffer (storage/uniform) into an ArrayBuffer.
|
|
81
|
+
* Caller is responsible for interpreting the bytes.
|
|
82
|
+
*/
|
|
83
|
+
readBuffer(buffer: GPUBuffer, sizeBytes: number): Promise<ArrayBuffer>;
|
|
79
84
|
createModuleUniformBuffers(layouts: ModuleUniformLayout[]): void;
|
|
80
85
|
createRenderUniformBuffer(byteSize: number): void;
|
|
81
86
|
writeRenderUniforms(snapshot: ViewSnapshot): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gpu-resources.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/gpu-resources.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gpu-resources.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/gpu-resources.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { GetParticlesInRadiusOptions, GetParticlesInRadiusResult } from "../../interfaces";
|
|
2
|
+
import type { GPUResources } from "./gpu-resources";
|
|
3
|
+
/**
|
|
4
|
+
* LocalQuery
|
|
5
|
+
*
|
|
6
|
+
* A small WebGPU compute pipeline used to query a bounded set of particles
|
|
7
|
+
* in a region without doing a full GPU→CPU readback of the entire particle buffer.
|
|
8
|
+
*
|
|
9
|
+
* This is used by tool-like features (brush/pin/remove) that need local occupancy.
|
|
10
|
+
*/
|
|
11
|
+
export declare class LocalQuery {
|
|
12
|
+
private pipeline;
|
|
13
|
+
private uniform;
|
|
14
|
+
private count;
|
|
15
|
+
private out;
|
|
16
|
+
private outIdx;
|
|
17
|
+
private capacity;
|
|
18
|
+
private device;
|
|
19
|
+
dispose(): void;
|
|
20
|
+
private ensure;
|
|
21
|
+
getParticlesInRadius(resources: GPUResources, center: {
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
}, radius: number, particleCount: number, opts?: GetParticlesInRadiusOptions): Promise<GetParticlesInRadiusResult>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=local-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-query.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/local-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,0BAA0B,EAE3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,MAAM,CAA0B;IAExC,OAAO,IAAI,IAAI;IAcf,OAAO,CAAC,MAAM;IA8FR,oBAAoB,CACxB,SAAS,EAAE,YAAY,EACvB,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAChC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,2BAA2B,GACjC,OAAO,CAAC,0BAA0B,CAAC;CAkEvC"}
|
|
@@ -20,11 +20,22 @@ export declare class ParticleStore {
|
|
|
20
20
|
private count;
|
|
21
21
|
constructor(maxParticles: number, floatsPerParticle?: number);
|
|
22
22
|
setParticles(list: IParticle[]): void;
|
|
23
|
-
addParticle(p: IParticle):
|
|
23
|
+
addParticle(p: IParticle): number;
|
|
24
|
+
setParticle(index: number, p: IParticle): void;
|
|
25
|
+
setParticleMass(index: number, mass: number): void;
|
|
24
26
|
clear(): void;
|
|
25
27
|
getCount(): number;
|
|
26
28
|
getParticles(): IParticle[];
|
|
27
29
|
getParticle(index: number): IParticle;
|
|
30
|
+
getFloatsPerParticle(): number;
|
|
31
|
+
/**
|
|
32
|
+
* Write a full particle record at index into GPU storage.
|
|
33
|
+
*/
|
|
34
|
+
syncParticleToGPU(resources: GPUResources, index: number): void;
|
|
35
|
+
/**
|
|
36
|
+
* Write a single mass value at index into GPU storage.
|
|
37
|
+
*/
|
|
38
|
+
syncParticleMassToGPU(resources: GPUResources, index: number): void;
|
|
28
39
|
/**
|
|
29
40
|
* Writes the currently active particle slice to the GPU particle buffer.
|
|
30
41
|
* Assumes the GPU storage buffer has already been created with matching capacity.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"particle-store.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/particle-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAe;IACpC,OAAO,CAAC,KAAK,CAAa;gBAEd,YAAY,EAAE,MAAM,EAAE,iBAAiB,SAAK;IAMxD,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI;IAMrC,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"particle-store.d.ts","sourceRoot":"","sources":["../../../src/runtimes/webgpu/particle-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAe;IACpC,OAAO,CAAC,KAAK,CAAa;gBAEd,YAAY,EAAE,MAAM,EAAE,iBAAiB,SAAK;IAMxD,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI;IAMrC,WAAW,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM;IAQjC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,GAAG,IAAI;IAK9C,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAMlD,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,SAAS,EAAE;IAQ3B,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS;IAgBrC,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAO/D;;OAEG;IACH,qBAAqB,CACnB,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,MAAM,GACZ,IAAI;IAMP;;;OAGG;IACH,SAAS,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI;IAMxC;;;OAGG;IACG,WAAW,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAezD;;OAEG;IACH,OAAO,CAAC,YAAY;CAiBrB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cazala/party",
|
|
3
|
-
"version": "0.1.0-next.
|
|
3
|
+
"version": "0.1.0-next.46.59ce407",
|
|
4
4
|
"description": "High-performance TypeScript particle physics engine with dual runtime support (WebGPU compute + CPU fallback). Features modular architecture, real-time parameter oscillation, advanced physics modules, and comprehensive rendering capabilities.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|