@eva/plugin-renderer-particle 2.1.0-beta.2 → 2.1.0-beta.3
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/package.json +3 -3
- package/dist/EVA.plugin.renderer.particle.js +0 -664
- package/dist/EVA.plugin.renderer.particle.min.js +0 -1
- package/dist/plugin-renderer-particle.cjs.js +0 -573
- package/dist/plugin-renderer-particle.cjs.prod.js +0 -1
- package/dist/plugin-renderer-particle.d.ts +0 -190
- package/dist/plugin-renderer-particle.esm.js +0 -567
|
@@ -1,190 +0,0 @@
|
|
|
1
|
-
import { Component } from '@eva/eva.js';
|
|
2
|
-
import { ComponentChanged } from '@eva/eva.js';
|
|
3
|
-
import { ContainerManager } from '@eva/plugin-renderer';
|
|
4
|
-
import { GameObject } from '@eva/eva.js';
|
|
5
|
-
import { ParticleContainer } from 'pixi.js';
|
|
6
|
-
import { Renderer } from '@eva/plugin-renderer';
|
|
7
|
-
import { RendererManager } from '@eva/plugin-renderer';
|
|
8
|
-
import { RendererSystem } from '@eva/plugin-renderer';
|
|
9
|
-
import { Texture } from 'pixi.js';
|
|
10
|
-
import { UpdateParams } from '@eva/eva.js';
|
|
11
|
-
|
|
12
|
-
export declare interface DeathZoneSpec {
|
|
13
|
-
shape: ZoneShape;
|
|
14
|
-
mode?: 'onEnter' | 'onLeave';
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export declare class Emitter {
|
|
18
|
-
private params;
|
|
19
|
-
private container;
|
|
20
|
-
private texture;
|
|
21
|
-
private frameTextures;
|
|
22
|
-
private particles;
|
|
23
|
-
private elapsed;
|
|
24
|
-
private emittedTotal;
|
|
25
|
-
private emitTimer;
|
|
26
|
-
private explodeDone;
|
|
27
|
-
constructor(params: ParticleEmitterParams, container: ParticleContainer, texture: Texture);
|
|
28
|
-
setTexture(texture: Texture): void;
|
|
29
|
-
/** Provide a texture pool when component.frame is set; emitOne samples from it. */
|
|
30
|
-
setFrameTextures(textures: Texture[] | null): void;
|
|
31
|
-
setParams(params: ParticleEmitterParams): void;
|
|
32
|
-
destroy(): void;
|
|
33
|
-
update(dt: number): void;
|
|
34
|
-
private advanceParticles;
|
|
35
|
-
private shouldDie;
|
|
36
|
-
private spawn;
|
|
37
|
-
private emitOne;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export declare interface EmitZoneSpec {
|
|
41
|
-
type?: 'random' | 'edge';
|
|
42
|
-
shape: ZoneShape;
|
|
43
|
-
total?: number;
|
|
44
|
-
stepRate?: number;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export declare class ParticleEmitter extends Component<ParticleEmitterParams> {
|
|
48
|
-
static componentName: string;
|
|
49
|
-
resource: string;
|
|
50
|
-
frame?: string | string[];
|
|
51
|
-
auto: boolean;
|
|
52
|
-
explode?: number;
|
|
53
|
-
duration: number;
|
|
54
|
-
stopAfter?: number;
|
|
55
|
-
frequency: number;
|
|
56
|
-
quantity: number;
|
|
57
|
-
maxParticles: number;
|
|
58
|
-
lifespan?: RangeValue;
|
|
59
|
-
speed?: RangeValue;
|
|
60
|
-
speedX?: RangeValue;
|
|
61
|
-
speedY?: RangeValue;
|
|
62
|
-
angle?: RangeValue;
|
|
63
|
-
rotate?: RangeValue;
|
|
64
|
-
scale?: RangeValue;
|
|
65
|
-
scaleX?: RangeValue;
|
|
66
|
-
scaleY?: RangeValue;
|
|
67
|
-
alpha?: RangeValue;
|
|
68
|
-
tint?: number | number[];
|
|
69
|
-
gravityX: number;
|
|
70
|
-
gravityY: number;
|
|
71
|
-
accelerationX?: RangeValue;
|
|
72
|
-
accelerationY?: RangeValue;
|
|
73
|
-
moveTo?: {
|
|
74
|
-
x: number;
|
|
75
|
-
y: number;
|
|
76
|
-
};
|
|
77
|
-
emitZone?: EmitZoneSpec;
|
|
78
|
-
deathZone?: DeathZoneSpec;
|
|
79
|
-
onEmit?: string;
|
|
80
|
-
onUpdate?: string;
|
|
81
|
-
/** Runtime 标记:由 System 设置,触发时立即停止发射。 */
|
|
82
|
-
paused: boolean;
|
|
83
|
-
init(obj?: ParticleEmitterParams): void;
|
|
84
|
-
/** 立刻停止发射(已存在的粒子继续运行直至 lifespan 到期)。 */
|
|
85
|
-
stop(): void;
|
|
86
|
-
/** 恢复发射。 */
|
|
87
|
-
start(): void;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
export declare interface ParticleEmitterParams {
|
|
91
|
-
resource: string;
|
|
92
|
-
/** Atlas frame name(s). Single string locks one frame; array randomly samples per emit. */
|
|
93
|
-
frame?: string | string[];
|
|
94
|
-
/** 是否自动开始发射,默认 true。 */
|
|
95
|
-
auto?: boolean;
|
|
96
|
-
/** 一次性爆发 N 个粒子(等价于 Phaser explode);设置后 frequency 不再生效。 */
|
|
97
|
-
explode?: number;
|
|
98
|
-
/** 单位 ms,emitter 持续时间;-1 = 无限。 */
|
|
99
|
-
duration?: number;
|
|
100
|
-
/** 累计发射 N 个后停止。 */
|
|
101
|
-
stopAfter?: number;
|
|
102
|
-
/** 单位 ms,两次发射间隔(每次产生 quantity 个);默认 250。 */
|
|
103
|
-
frequency?: number;
|
|
104
|
-
/** 每次 emit 的粒子个数,默认 1。 */
|
|
105
|
-
quantity?: number;
|
|
106
|
-
/** 粒子最大存活数(性能上限),默认 500。 */
|
|
107
|
-
maxParticles?: number;
|
|
108
|
-
lifespan?: RangeValue;
|
|
109
|
-
speed?: RangeValue;
|
|
110
|
-
speedX?: RangeValue;
|
|
111
|
-
speedY?: RangeValue;
|
|
112
|
-
/** 角度,单位:度。Phaser 默认 0~360。 */
|
|
113
|
-
angle?: RangeValue;
|
|
114
|
-
rotate?: RangeValue;
|
|
115
|
-
scale?: RangeValue;
|
|
116
|
-
scaleX?: RangeValue;
|
|
117
|
-
scaleY?: RangeValue;
|
|
118
|
-
alpha?: RangeValue;
|
|
119
|
-
/** 单色 hex 或多色随机数组。 */
|
|
120
|
-
tint?: number | number[];
|
|
121
|
-
gravityX?: number;
|
|
122
|
-
gravityY?: number;
|
|
123
|
-
accelerationX?: RangeValue;
|
|
124
|
-
accelerationY?: RangeValue;
|
|
125
|
-
/** 粒子目标点;设置后 speed/angle 用于计算朝目标的 vx/vy。 */
|
|
126
|
-
moveTo?: {
|
|
127
|
-
x: number;
|
|
128
|
-
y: number;
|
|
129
|
-
};
|
|
130
|
-
emitZone?: EmitZoneSpec;
|
|
131
|
-
deathZone?: DeathZoneSpec;
|
|
132
|
-
/** 命名钩子,由宿主自定义解析(DSL 中存事件 key)。 */
|
|
133
|
-
onEmit?: string;
|
|
134
|
-
onUpdate?: string;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
export declare class ParticleEmitterSystem extends Renderer {
|
|
138
|
-
static systemName: string;
|
|
139
|
-
name: string;
|
|
140
|
-
private records;
|
|
141
|
-
private lastDeltaTime;
|
|
142
|
-
renderSystem: RendererSystem;
|
|
143
|
-
rendererManager: RendererManager;
|
|
144
|
-
containerManager: ContainerManager;
|
|
145
|
-
init(): void;
|
|
146
|
-
update(e?: UpdateParams): void;
|
|
147
|
-
rendererUpdate(gameObject: GameObject): void;
|
|
148
|
-
componentChanged(changed: ComponentChanged): Promise<void>;
|
|
149
|
-
destroy(): void;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
export declare type RangeValue = number | {
|
|
153
|
-
min: number;
|
|
154
|
-
max: number;
|
|
155
|
-
} | {
|
|
156
|
-
start: number;
|
|
157
|
-
end: number;
|
|
158
|
-
ease?: string;
|
|
159
|
-
} | number[];
|
|
160
|
-
|
|
161
|
-
export declare type ZoneShape = {
|
|
162
|
-
type: 'point';
|
|
163
|
-
x?: number;
|
|
164
|
-
y?: number;
|
|
165
|
-
} | {
|
|
166
|
-
type: 'rect';
|
|
167
|
-
x?: number;
|
|
168
|
-
y?: number;
|
|
169
|
-
width: number;
|
|
170
|
-
height: number;
|
|
171
|
-
} | {
|
|
172
|
-
type: 'circle';
|
|
173
|
-
x?: number;
|
|
174
|
-
y?: number;
|
|
175
|
-
radius: number;
|
|
176
|
-
} | {
|
|
177
|
-
type: 'ellipse';
|
|
178
|
-
x?: number;
|
|
179
|
-
y?: number;
|
|
180
|
-
rx: number;
|
|
181
|
-
ry: number;
|
|
182
|
-
} | {
|
|
183
|
-
type: 'line';
|
|
184
|
-
x1: number;
|
|
185
|
-
y1: number;
|
|
186
|
-
x2: number;
|
|
187
|
-
y2: number;
|
|
188
|
-
};
|
|
189
|
-
|
|
190
|
-
export { }
|