@woosh/meep-engine 3.34.0 → 3.36.0

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.
Files changed (161) hide show
  1. package/package.json +1 -1
  2. package/src/engine/Engine.d.ts +2 -0
  3. package/src/engine/Engine.d.ts.map +1 -1
  4. package/src/engine/Engine.js +5 -1
  5. package/src/engine/input/devices/XRInputDevice.d.ts +63 -0
  6. package/src/engine/input/devices/XRInputDevice.d.ts.map +1 -0
  7. package/src/engine/input/devices/XRInputDevice.js +386 -0
  8. package/src/engine/input/devices/xr/XRInputAction.d.ts +37 -0
  9. package/src/engine/input/devices/xr/XRInputAction.d.ts.map +1 -0
  10. package/src/engine/input/devices/xr/XRInputAction.js +85 -0
  11. package/src/engine/input/devices/xr/XRInputButton.d.ts +28 -0
  12. package/src/engine/input/devices/xr/XRInputButton.d.ts.map +1 -0
  13. package/src/engine/input/devices/xr/XRInputButton.js +43 -0
  14. package/src/engine/input/devices/xr/XRInputCoordinates.d.ts +15 -0
  15. package/src/engine/input/devices/xr/XRInputCoordinates.d.ts.map +1 -0
  16. package/src/engine/input/devices/xr/XRInputCoordinates.js +21 -0
  17. package/src/engine/input/devices/xr/XRInputHandle.d.ts +63 -0
  18. package/src/engine/input/devices/xr/XRInputHandle.d.ts.map +1 -0
  19. package/src/engine/input/devices/xr/XRInputHandle.js +171 -0
  20. package/src/engine/input/devices/xr/XRInputPose.d.ts +23 -0
  21. package/src/engine/input/devices/xr/XRInputPose.d.ts.map +1 -0
  22. package/src/engine/input/devices/xr/XRInputPose.js +36 -0
  23. package/src/engine/input/devices/xr/XRInputTypes.d.ts +76 -0
  24. package/src/engine/input/devices/xr/XRInputTypes.d.ts.map +1 -0
  25. package/src/engine/input/devices/xr/XRInputTypes.js +31 -0
  26. package/src/engine/input/devices/xr/XRInputValueSource.d.ts +11 -0
  27. package/src/engine/input/devices/xr/XRInputValueSource.d.ts.map +1 -0
  28. package/src/engine/input/devices/xr/XRInputValueSource.js +11 -0
  29. package/src/engine/input/ecs/ism/coordinate/InputCoordinateChannel.d.ts +15 -1
  30. package/src/engine/input/ecs/ism/coordinate/InputCoordinateChannel.d.ts.map +1 -1
  31. package/src/engine/input/ecs/ism/coordinate/InputCoordinateChannel.js +9 -0
  32. package/src/engine/input/ecs/ism/coordinate/InputCoordinateDevice.d.ts +15 -4
  33. package/src/engine/input/ecs/ism/coordinate/InputCoordinateDevice.d.ts.map +1 -1
  34. package/src/engine/input/ecs/ism/coordinate/InputCoordinateDevice.js +22 -0
  35. package/src/engine/input/ecs/ism/coordinate/InputCoordinateSwitches.d.ts +17 -2
  36. package/src/engine/input/ecs/ism/coordinate/InputCoordinateSwitches.d.ts.map +1 -1
  37. package/src/engine/input/ecs/ism/device/GamepadInputDeviceAdapter.d.ts +5 -0
  38. package/src/engine/input/ecs/ism/device/GamepadInputDeviceAdapter.d.ts.map +1 -1
  39. package/src/engine/input/ecs/ism/device/InputDeviceAdapter.d.ts +2 -0
  40. package/src/engine/input/ecs/ism/device/InputDeviceAdapter.d.ts.map +1 -1
  41. package/src/engine/input/ecs/ism/device/InputDeviceAdapter.js +2 -0
  42. package/src/engine/input/ecs/ism/device/KeyboardInputDeviceAdapter.d.ts +7 -0
  43. package/src/engine/input/ecs/ism/device/KeyboardInputDeviceAdapter.d.ts.map +1 -1
  44. package/src/engine/input/ecs/ism/device/ManualInputDeviceAdapter.d.ts +5 -0
  45. package/src/engine/input/ecs/ism/device/ManualInputDeviceAdapter.d.ts.map +1 -1
  46. package/src/engine/input/ecs/ism/device/PointerInputDeviceAdapter.d.ts +5 -0
  47. package/src/engine/input/ecs/ism/device/PointerInputDeviceAdapter.d.ts.map +1 -1
  48. package/src/engine/input/ecs/ism/device/XRInputDeviceAdapter.d.ts +16 -0
  49. package/src/engine/input/ecs/ism/device/XRInputDeviceAdapter.d.ts.map +1 -0
  50. package/src/engine/input/ecs/ism/device/XRInputDeviceAdapter.js +54 -0
  51. package/src/engine/input/ecs/ism/device/XR_INPUT_DEVICE_IDS.d.ts +9 -0
  52. package/src/engine/input/ecs/ism/device/XR_INPUT_DEVICE_IDS.d.ts.map +1 -0
  53. package/src/engine/input/ecs/ism/device/XR_INPUT_DEVICE_IDS.js +12 -0
  54. package/src/engine/input/ecs/ism/trigger/InputTrigger.d.ts +11 -1
  55. package/src/engine/input/ecs/ism/trigger/InputTrigger.d.ts.map +1 -1
  56. package/src/engine/input/ecs/ism/trigger/InputTrigger.js +7 -0
  57. package/src/engine/input/ecs/ism/trigger/InputTriggerChord.d.ts +16 -2
  58. package/src/engine/input/ecs/ism/trigger/InputTriggerChord.d.ts.map +1 -1
  59. package/src/engine/input/ecs/ism/trigger/InputTriggerHold.d.ts +22 -2
  60. package/src/engine/input/ecs/ism/trigger/InputTriggerHold.d.ts.map +1 -1
  61. package/src/engine/input/ecs/ism/trigger/InputTriggerRelease.d.ts +16 -2
  62. package/src/engine/input/ecs/ism/trigger/InputTriggerRelease.d.ts.map +1 -1
  63. package/src/engine/input/ecs/ism/trigger/InputTriggerSequence.d.ts +24 -4
  64. package/src/engine/input/ecs/ism/trigger/InputTriggerSequence.d.ts.map +1 -1
  65. package/src/engine/input/ecs/ism/trigger/InputTriggerSwitch.d.ts +6 -8
  66. package/src/engine/input/ecs/ism/trigger/InputTriggerSwitch.d.ts.map +1 -1
  67. package/src/engine/input/ecs/ism/trigger/InputTriggerSwitch.js +5 -0
  68. package/src/engine/input/ecs/ism/trigger/InputTriggerXRButton.d.ts +7 -0
  69. package/src/engine/input/ecs/ism/trigger/InputTriggerXRButton.d.ts.map +1 -0
  70. package/src/engine/input/ecs/ism/trigger/InputTriggerXRButton.js +15 -0
  71. package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
  72. package/src/shade/device/timing/profile/GPUProfileSession.d.ts +25 -11
  73. package/src/shade/device/timing/profile/GPUProfileSession.d.ts.map +1 -1
  74. package/src/shade/device/timing/profile/GPUProfileSession.js +553 -474
  75. package/src/shade/playground/avboit/main.d.ts.map +1 -1
  76. package/src/shade/playground/avboit/main.js +888 -916
  77. package/src/shade/playground/particle_ecs/README.md +13 -7
  78. package/src/shade/playground/particle_ecs/bonfire_effects.d.ts +5 -5
  79. package/src/shade/playground/particle_ecs/bonfire_effects.js +5 -5
  80. package/src/shade/playground/particle_ecs/effects/smoke.json +1859 -1859
  81. package/src/shade/playground/particle_ecs/effects/soot.json +1605 -1605
  82. package/src/shade/playground/particle_system/README.md +1 -2
  83. package/src/shade/playground/profile_hotkey.d.ts.map +1 -1
  84. package/src/shade/playground/profile_hotkey.js +4 -40
  85. package/src/shade/playground/skinned_blas_refit/main.d.ts.map +1 -1
  86. package/src/shade/playground/skinned_blas_refit/main.js +4 -39
  87. package/src/shade/playground/volumetrics_froxel/main.d.ts.map +1 -1
  88. package/src/shade/playground/volumetrics_froxel/main.js +4 -39
  89. package/src/shade/playground/volumetrics_froxel/measure.d.ts.map +1 -1
  90. package/src/shade/playground/volumetrics_froxel/measure.js +2 -4
  91. package/src/shade/renderer/Renderer.d.ts +1 -1
  92. package/src/shade/renderer/Renderer.d.ts.map +1 -1
  93. package/src/shade/renderer/Renderer.js +3 -1
  94. package/src/shade/renderer/light/GPULightCollection.d.ts +9 -1
  95. package/src/shade/renderer/light/GPULightCollection.d.ts.map +1 -1
  96. package/src/shade/renderer/light/GPULightCollection.js +41 -0
  97. package/src/shade/renderer/light/environment/shader_project_environment_sh.d.ts +37 -0
  98. package/src/shade/renderer/light/environment/shader_project_environment_sh.d.ts.map +1 -0
  99. package/src/shade/renderer/light/environment/shader_project_environment_sh.js +105 -0
  100. package/src/shade/renderer/loader/gltf/tiny-gltf.d.ts +1 -1
  101. package/src/shade/renderer/particles/DESIGN.md +65 -8
  102. package/src/shade/renderer/particles/GPUParticleSystem.d.ts +7 -1
  103. package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
  104. package/src/shade/renderer/particles/GPUParticleSystem.js +1247 -1244
  105. package/src/shade/renderer/particles/graph_particles_avboit.d.ts +7 -1
  106. package/src/shade/renderer/particles/graph_particles_avboit.d.ts.map +1 -1
  107. package/src/shade/renderer/particles/graph_particles_avboit.js +9 -0
  108. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.d.ts.map +1 -1
  109. package/src/shade/renderer/particles/shaders/chunk_particle_billboard_vertex.js +4 -2
  110. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts +15 -9
  111. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.d.ts.map +1 -1
  112. package/src/shade/renderer/particles/shaders/chunk_particle_lighting.js +29 -11
  113. package/src/shade/renderer/particles/shaders/chunk_particle_lighting_model.d.ts +24 -0
  114. package/src/shade/renderer/particles/shaders/chunk_particle_lighting_model.d.ts.map +1 -0
  115. package/src/shade/renderer/particles/shaders/chunk_particle_lighting_model.js +45 -0
  116. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.d.ts +3 -0
  117. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.d.ts.map +1 -1
  118. package/src/shade/renderer/particles/shaders/chunk_particle_render_math.js +38 -0
  119. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.d.ts.map +1 -1
  120. package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +190 -185
  121. package/src/shade/renderer/rasterize/native/avboit/AVBOITSideChannel.d.ts +8 -0
  122. package/src/shade/renderer/rasterize/native/avboit/AVBOITSideChannel.d.ts.map +1 -1
  123. package/src/shade/renderer/rasterize/native/avboit/AVBOITSideChannel.js +5 -0
  124. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts +8 -1
  125. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.d.ts.map +1 -1
  126. package/src/shade/renderer/rasterize/native/avboit/graph_rasterize_meshes_transparent_avboit.js +9 -0
  127. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts +13 -3
  128. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.d.ts.map +1 -1
  129. package/src/shade/renderer/volumetrics/GPUViewVolumetrics.js +9 -1
  130. package/src/shade/renderer/volumetrics/chunk_volumetrics_irradiance_sh.d.ts +39 -0
  131. package/src/shade/renderer/volumetrics/chunk_volumetrics_irradiance_sh.d.ts.map +1 -0
  132. package/src/shade/renderer/volumetrics/chunk_volumetrics_irradiance_sh.js +107 -0
  133. package/src/shade/renderer/volumetrics/gi/chunk_volumetrics_froxel_centre_ws.d.ts +15 -0
  134. package/src/shade/renderer/volumetrics/gi/chunk_volumetrics_froxel_centre_ws.d.ts.map +1 -0
  135. package/src/shade/renderer/volumetrics/gi/chunk_volumetrics_froxel_centre_ws.js +44 -0
  136. package/src/shade/renderer/volumetrics/gi/chunk_volumetrics_gi.d.ts +19 -0
  137. package/src/shade/renderer/volumetrics/gi/chunk_volumetrics_gi.d.ts.map +1 -0
  138. package/src/shade/renderer/volumetrics/gi/chunk_volumetrics_gi.js +48 -0
  139. package/src/shade/renderer/volumetrics/gi/graph_build_froxel_gi.d.ts +29 -0
  140. package/src/shade/renderer/volumetrics/gi/graph_build_froxel_gi.d.ts.map +1 -0
  141. package/src/shade/renderer/volumetrics/gi/graph_build_froxel_gi.js +90 -0
  142. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_brick4.d.ts +10 -0
  143. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_brick4.d.ts.map +1 -0
  144. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_brick4.js +55 -0
  145. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_ibl.d.ts +10 -0
  146. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_ibl.d.ts.map +1 -0
  147. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_ibl.js +47 -0
  148. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_lpv.d.ts +10 -0
  149. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_lpv.d.ts.map +1 -0
  150. package/src/shade/renderer/volumetrics/gi/shader_volumetrics_gi_lpv.js +63 -0
  151. package/src/shade/renderer/volumetrics/gi/volumetrics_gi_resources.d.ts +17 -0
  152. package/src/shade/renderer/volumetrics/gi/volumetrics_gi_resources.d.ts.map +1 -0
  153. package/src/shade/renderer/volumetrics/gi/volumetrics_gi_resources.js +26 -0
  154. package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts +8 -1
  155. package/src/shade/renderer/volumetrics/graph_build_volumetrics.d.ts.map +1 -1
  156. package/src/shade/renderer/volumetrics/graph_build_volumetrics.js +50 -2
  157. package/src/shade/renderer/volumetrics/shader_volumetrics_build_lighting.d.ts.map +1 -1
  158. package/src/shade/renderer/volumetrics/shader_volumetrics_build_lighting.js +488 -436
  159. package/src/shade/wgsl/emulator/WGSLJavaScriptCompiler.d.ts +1 -1
  160. package/src/shade/wgsl/emulator/WGSLJavaScriptCompiler.d.ts.map +1 -1
  161. package/src/shade/wgsl/emulator/WGSLJavaScriptCompiler.js +254 -63
@@ -1,1606 +1,1606 @@
1
- {
2
- "name": "soot",
3
- "attributes": [
4
- {
5
- "name": "position",
6
- "components": 3
7
- },
8
- {
9
- "name": "velocity",
10
- "components": 3
11
- },
12
- {
13
- "name": "age",
14
- "components": 1
15
- },
16
- {
17
- "name": "life",
18
- "components": 1
19
- },
20
- {
21
- "name": "size",
22
- "components": 1
23
- },
24
- {
25
- "name": "size0",
26
- "components": 1
27
- },
28
- {
29
- "name": "color",
30
- "components": 4
31
- },
32
- {
33
- "name": "spin",
34
- "components": 1
35
- },
36
- {
37
- "name": "spin_rate",
38
- "components": 1
39
- },
40
- {
41
- "name": "seed",
42
- "components": 1
43
- }
44
- ],
45
- "groups": [],
46
- "init": {
47
- "nodes": [
48
- {
49
- "id": 18,
50
- "type": "builtin",
51
- "parameters": {
52
- "id": 2
53
- },
54
- "x": 1524.266787905249,
55
- "y": -95.60801223873777
56
- },
57
- {
58
- "id": 19,
59
- "type": "add",
60
- "parameters": {},
61
- "x": 1835,
62
- "y": 2.5
63
- },
64
- {
65
- "id": 20,
66
- "type": "setAttribute",
67
- "parameters": {
68
- "name": "position"
69
- },
70
- "x": 2055,
71
- "y": 2.5
72
- },
73
- {
74
- "id": 21,
75
- "type": "const",
76
- "parameters": {
77
- "value": [
78
- 0,
79
- 1.9,
80
- 0
81
- ]
82
- },
83
- "x": 481.25,
84
- "y": 551.5
85
- },
86
- {
87
- "id": 22,
88
- "type": "random",
89
- "parameters": {
90
- "components": 3
91
- },
92
- "x": 0,
93
- "y": 559.5
94
- },
95
- {
96
- "id": 23,
97
- "type": "mad",
98
- "parameters": {},
99
- "x": 220,
100
- "y": 645.5
101
- },
102
- {
103
- "id": 24,
104
- "type": "const",
105
- "parameters": {
106
- "value": [
107
- 2
108
- ]
109
- },
110
- "x": 3.75,
111
- "y": 661.5
112
- },
113
- {
114
- "id": 25,
115
- "type": "const",
116
- "parameters": {
117
- "value": [
118
- -1
119
- ]
120
- },
121
- "x": 3.75,
122
- "y": 755.5
123
- },
124
- {
125
- "id": 26,
126
- "type": "scale",
127
- "parameters": {},
128
- "x": 470,
129
- "y": 711
130
- },
131
- {
132
- "id": 27,
133
- "type": "const",
134
- "parameters": {
135
- "value": [
136
- 0.7
137
- ]
138
- },
139
- "x": 231.25,
140
- "y": 771.5
141
- },
142
- {
143
- "id": 28,
144
- "type": "add",
145
- "parameters": {},
146
- "x": 705,
147
- "y": 695
148
- },
149
- {
150
- "id": 29,
151
- "type": "setAttribute",
152
- "parameters": {
153
- "name": "velocity"
154
- },
155
- "x": 925,
156
- "y": 695
157
- },
158
- {
159
- "id": 30,
160
- "type": "random",
161
- "parameters": {
162
- "components": 1
163
- },
164
- "x": 0,
165
- "y": 959.5
166
- },
167
- {
168
- "id": 31,
169
- "type": "mad",
170
- "parameters": {},
171
- "x": 220,
172
- "y": 1076.5
173
- },
174
- {
175
- "id": 32,
176
- "type": "const",
177
- "parameters": {
178
- "value": [
179
- 0.03
180
- ]
181
- },
182
- "x": 3.75,
183
- "y": 1053.5
184
- },
185
- {
186
- "id": 33,
187
- "type": "const",
188
- "parameters": {
189
- "value": [
190
- 0.02
191
- ]
192
- },
193
- "x": 3.75,
194
- "y": 1147.5
195
- },
196
- {
197
- "id": 34,
198
- "type": "setAttribute",
199
- "parameters": {
200
- "name": "age"
201
- },
202
- "x": 205,
203
- "y": 465.5
204
- },
205
- {
206
- "id": 35,
207
- "type": "const",
208
- "parameters": {
209
- "value": [
210
- 0
211
- ]
212
- },
213
- "x": 3.75,
214
- "y": 465.5
215
- },
216
- {
217
- "id": 36,
218
- "type": "random",
219
- "parameters": {
220
- "components": 1
221
- },
222
- "x": 0,
223
- "y": 1241.5
224
- },
225
- {
226
- "id": 37,
227
- "type": "mad",
228
- "parameters": {},
229
- "x": 220,
230
- "y": 1358.5
231
- },
232
- {
233
- "id": 38,
234
- "type": "const",
235
- "parameters": {
236
- "value": [
237
- 2.6
238
- ]
239
- },
240
- "x": 3.75,
241
- "y": 1335.5
242
- },
243
- {
244
- "id": 39,
245
- "type": "const",
246
- "parameters": {
247
- "value": [
248
- 2.6
249
- ]
250
- },
251
- "x": 3.75,
252
- "y": 1429.5
253
- },
254
- {
255
- "id": 40,
256
- "type": "setAttribute",
257
- "parameters": {
258
- "name": "life"
259
- },
260
- "x": 455,
261
- "y": 1358.5
262
- },
263
- {
264
- "id": 41,
265
- "type": "setAttribute",
266
- "parameters": {
267
- "name": "size0"
268
- },
269
- "x": 455,
270
- "y": 951.5
271
- },
272
- {
273
- "id": 42,
274
- "type": "setAttribute",
275
- "parameters": {
276
- "name": "size"
277
- },
278
- "x": 455,
279
- "y": 1123.5
280
- },
281
- {
282
- "id": 43,
283
- "type": "setAttribute",
284
- "parameters": {
285
- "name": "color"
286
- },
287
- "x": 205,
288
- "y": 865.5
289
- },
290
- {
291
- "id": 44,
292
- "type": "const",
293
- "parameters": {
294
- "value": [
295
- 1,
296
- 1,
297
- 1,
298
- 0
299
- ]
300
- },
301
- "x": 3.75,
302
- "y": 865.5
303
- },
304
- {
305
- "id": 45,
306
- "type": "random",
307
- "parameters": {
308
- "components": 1
309
- },
310
- "x": 0,
311
- "y": 1523.5
312
- },
313
- {
314
- "id": 46,
315
- "type": "mad",
316
- "parameters": {},
317
- "x": 220,
318
- "y": 1640.5
319
- },
320
- {
321
- "id": 47,
322
- "type": "const",
323
- "parameters": {
324
- "value": [
325
- 6.28
326
- ]
327
- },
328
- "x": 3.75,
329
- "y": 1617.5
330
- },
331
- {
332
- "id": 48,
333
- "type": "const",
334
- "parameters": {
335
- "value": [
336
- -3.14
337
- ]
338
- },
339
- "x": 3.75,
340
- "y": 1711.5
341
- },
342
- {
343
- "id": 49,
344
- "type": "setAttribute",
345
- "parameters": {
346
- "name": "spin"
347
- },
348
- "x": 455,
349
- "y": 1640.5
350
- },
351
- {
352
- "id": 50,
353
- "type": "random",
354
- "parameters": {
355
- "components": 1
356
- },
357
- "x": 0,
358
- "y": 1805.5
359
- },
360
- {
361
- "id": 51,
362
- "type": "mad",
363
- "parameters": {},
364
- "x": 220,
365
- "y": 1922.5
366
- },
367
- {
368
- "id": 52,
369
- "type": "const",
370
- "parameters": {
371
- "value": [
372
- 14
373
- ]
374
- },
375
- "x": 3.75,
376
- "y": 1899.5
377
- },
378
- {
379
- "id": 53,
380
- "type": "const",
381
- "parameters": {
382
- "value": [
383
- -7
384
- ]
385
- },
386
- "x": 3.75,
387
- "y": 1993.5
388
- },
389
- {
390
- "id": 54,
391
- "type": "setAttribute",
392
- "parameters": {
393
- "name": "spin_rate"
394
- },
395
- "x": 455,
396
- "y": 1922.5
397
- },
398
- {
399
- "id": 55,
400
- "type": "random",
401
- "parameters": {
402
- "components": 1
403
- },
404
- "x": 0,
405
- "y": 2087.5
406
- },
407
- {
408
- "id": 56,
409
- "type": "mad",
410
- "parameters": {},
411
- "x": 220,
412
- "y": 2204.5
413
- },
414
- {
415
- "id": 57,
416
- "type": "const",
417
- "parameters": {
418
- "value": [
419
- 64
420
- ]
421
- },
422
- "x": 3.75,
423
- "y": 2181.5
424
- },
425
- {
426
- "id": 58,
427
- "type": "const",
428
- "parameters": {
429
- "value": [
430
- 0
431
- ]
432
- },
433
- "x": 3.75,
434
- "y": 2275.5
435
- },
436
- {
437
- "id": 59,
438
- "type": "setAttribute",
439
- "parameters": {
440
- "name": "seed"
441
- },
442
- "x": 455,
443
- "y": 2204.5
444
- },
445
- {
446
- "id": 0,
447
- "type": "sampleSphereVolume",
448
- "parameters": {},
449
- "x": 1580.274926377338,
450
- "y": 95.7984954592288
451
- },
452
- {
453
- "id": 1,
454
- "type": "random",
455
- "parameters": {
456
- "components": 3
457
- },
458
- "x": 1288.9516890851849,
459
- "y": 82.30089373140704
460
- }
461
- ],
462
- "connections": [
463
- {
464
- "from": 18,
465
- "fromPort": "out",
466
- "to": 19,
467
- "toPort": "a"
468
- },
469
- {
470
- "from": 19,
471
- "fromPort": "out",
472
- "to": 20,
473
- "toPort": "value"
474
- },
475
- {
476
- "from": 22,
477
- "fromPort": "out",
478
- "to": 23,
479
- "toPort": "a"
480
- },
481
- {
482
- "from": 24,
483
- "fromPort": "out",
484
- "to": 23,
485
- "toPort": "b"
486
- },
487
- {
488
- "from": 25,
489
- "fromPort": "out",
490
- "to": 23,
491
- "toPort": "c"
492
- },
493
- {
494
- "from": 23,
495
- "fromPort": "out",
496
- "to": 26,
497
- "toPort": "v"
498
- },
499
- {
500
- "from": 27,
501
- "fromPort": "out",
502
- "to": 26,
503
- "toPort": "s"
504
- },
505
- {
506
- "from": 21,
507
- "fromPort": "out",
508
- "to": 28,
509
- "toPort": "a"
510
- },
511
- {
512
- "from": 26,
513
- "fromPort": "out",
514
- "to": 28,
515
- "toPort": "b"
516
- },
517
- {
518
- "from": 28,
519
- "fromPort": "out",
520
- "to": 29,
521
- "toPort": "value"
522
- },
523
- {
524
- "from": 30,
525
- "fromPort": "out",
526
- "to": 31,
527
- "toPort": "a"
528
- },
529
- {
530
- "from": 32,
531
- "fromPort": "out",
532
- "to": 31,
533
- "toPort": "b"
534
- },
535
- {
536
- "from": 33,
537
- "fromPort": "out",
538
- "to": 31,
539
- "toPort": "c"
540
- },
541
- {
542
- "from": 35,
543
- "fromPort": "out",
544
- "to": 34,
545
- "toPort": "value"
546
- },
547
- {
548
- "from": 36,
549
- "fromPort": "out",
550
- "to": 37,
551
- "toPort": "a"
552
- },
553
- {
554
- "from": 38,
555
- "fromPort": "out",
556
- "to": 37,
557
- "toPort": "b"
558
- },
559
- {
560
- "from": 39,
561
- "fromPort": "out",
562
- "to": 37,
563
- "toPort": "c"
564
- },
565
- {
566
- "from": 37,
567
- "fromPort": "out",
568
- "to": 40,
569
- "toPort": "value"
570
- },
571
- {
572
- "from": 31,
573
- "fromPort": "out",
574
- "to": 41,
575
- "toPort": "value"
576
- },
577
- {
578
- "from": 31,
579
- "fromPort": "out",
580
- "to": 42,
581
- "toPort": "value"
582
- },
583
- {
584
- "from": 44,
585
- "fromPort": "out",
586
- "to": 43,
587
- "toPort": "value"
588
- },
589
- {
590
- "from": 45,
591
- "fromPort": "out",
592
- "to": 46,
593
- "toPort": "a"
594
- },
595
- {
596
- "from": 47,
597
- "fromPort": "out",
598
- "to": 46,
599
- "toPort": "b"
600
- },
601
- {
602
- "from": 48,
603
- "fromPort": "out",
604
- "to": 46,
605
- "toPort": "c"
606
- },
607
- {
608
- "from": 46,
609
- "fromPort": "out",
610
- "to": 49,
611
- "toPort": "value"
612
- },
613
- {
614
- "from": 50,
615
- "fromPort": "out",
616
- "to": 51,
617
- "toPort": "a"
618
- },
619
- {
620
- "from": 52,
621
- "fromPort": "out",
622
- "to": 51,
623
- "toPort": "b"
624
- },
625
- {
626
- "from": 53,
627
- "fromPort": "out",
628
- "to": 51,
629
- "toPort": "c"
630
- },
631
- {
632
- "from": 51,
633
- "fromPort": "out",
634
- "to": 54,
635
- "toPort": "value"
636
- },
637
- {
638
- "from": 55,
639
- "fromPort": "out",
640
- "to": 56,
641
- "toPort": "a"
642
- },
643
- {
644
- "from": 57,
645
- "fromPort": "out",
646
- "to": 56,
647
- "toPort": "b"
648
- },
649
- {
650
- "from": 58,
651
- "fromPort": "out",
652
- "to": 56,
653
- "toPort": "c"
654
- },
655
- {
656
- "from": 56,
657
- "fromPort": "out",
658
- "to": 59,
659
- "toPort": "value"
660
- },
661
- {
662
- "from": 0,
663
- "fromPort": "out",
664
- "to": 19,
665
- "toPort": "b"
666
- },
667
- {
668
- "from": 1,
669
- "fromPort": "out",
670
- "to": 0,
671
- "toPort": "uvw"
672
- }
673
- ]
674
- },
675
- "update": {
676
- "nodes": [
677
- {
678
- "id": 0,
679
- "type": "builtin",
680
- "parameters": {
681
- "id": 0
682
- },
683
- "x": 0,
684
- "y": 1070.5
685
- },
686
- {
687
- "id": 1,
688
- "type": "attribute",
689
- "parameters": {
690
- "name": "age"
691
- },
692
- "x": 12,
693
- "y": 1334.5
694
- },
695
- {
696
- "id": 2,
697
- "type": "add",
698
- "parameters": {},
699
- "x": 347,
700
- "y": 1334.5
701
- },
702
- {
703
- "id": 3,
704
- "type": "setAttribute",
705
- "parameters": {
706
- "name": "age"
707
- },
708
- "x": 601,
709
- "y": 1334.5
710
- },
711
- {
712
- "id": 4,
713
- "type": "attribute",
714
- "parameters": {
715
- "name": "life"
716
- },
717
- "x": 312,
718
- "y": 1685.75
719
- },
720
- {
721
- "id": 5,
722
- "type": "div",
723
- "parameters": {},
724
- "x": 635,
725
- "y": 1668.75
726
- },
727
- {
728
- "id": 6,
729
- "type": "compare",
730
- "parameters": {
731
- "op": "ge"
732
- },
733
- "x": 973,
734
- "y": 2038.75
735
- },
736
- {
737
- "id": 7,
738
- "type": "const",
739
- "parameters": {
740
- "value": [
741
- 1
742
- ]
743
- },
744
- "x": 600,
745
- "y": 2055.75
746
- },
747
- {
748
- "id": 8,
749
- "type": "kill",
750
- "parameters": {},
751
- "x": 1352.5,
752
- "y": 2038.75
753
- },
754
- {
755
- "id": 9,
756
- "type": "const",
757
- "parameters": {
758
- "value": [
759
- 0,
760
- 2.6,
761
- 0
762
- ]
763
- },
764
- "x": 1291,
765
- "y": 303
766
- },
767
- {
768
- "id": 10,
769
- "type": "const",
770
- "parameters": {
771
- "value": [
772
- 0,
773
- -2.4,
774
- 0
775
- ]
776
- },
777
- "x": 1291,
778
- "y": 434
779
- },
780
- {
781
- "id": 11,
782
- "type": "mul",
783
- "parameters": {},
784
- "x": 975,
785
- "y": 565
786
- },
787
- {
788
- "id": 12,
789
- "type": "const",
790
- "parameters": {
791
- "value": [
792
- 2.4
793
- ]
794
- },
795
- "x": 600,
796
- "y": 565
797
- },
798
- {
799
- "id": 13,
800
- "type": "saturate",
801
- "parameters": {},
802
- "x": 1361,
803
- "y": 565
804
- },
805
- {
806
- "id": 14,
807
- "type": "mix",
808
- "parameters": {},
809
- "x": 1696,
810
- "y": 386
811
- },
812
- {
813
- "id": 15,
814
- "type": "builtin",
815
- "parameters": {
816
- "id": 7
817
- },
818
- "x": 0,
819
- "y": 262
820
- },
821
- {
822
- "id": 16,
823
- "type": "mul",
824
- "parameters": {},
825
- "x": 340.5,
826
- "y": 922.75
827
- },
828
- {
829
- "id": 17,
830
- "type": "const",
831
- "parameters": {
832
- "value": [
833
- -0.35
834
- ]
835
- },
836
- "x": 11,
837
- "y": 590.5
838
- },
839
- {
840
- "id": 18,
841
- "type": "attribute",
842
- "parameters": {
843
- "name": "seed"
844
- },
845
- "x": 312,
846
- "y": 408.75
847
- },
848
- {
849
- "id": 19,
850
- "type": "vec3",
851
- "parameters": {},
852
- "x": 613,
853
- "y": 848.75
854
- },
855
- {
856
- "id": 20,
857
- "type": "const",
858
- "parameters": {
859
- "value": [
860
- 0
861
- ]
862
- },
863
- "x": 311,
864
- "y": 1035.75
865
- },
866
- {
867
- "id": 21,
868
- "type": "attribute",
869
- "parameters": {
870
- "name": "position"
871
- },
872
- "x": 12,
873
- "y": 0
874
- },
875
- {
876
- "id": 22,
877
- "type": "scale",
878
- "parameters": {},
879
- "x": 347.5,
880
- "y": 65.75
881
- },
882
- {
883
- "id": 23,
884
- "type": "const",
885
- "parameters": {
886
- "value": [
887
- 0.9
888
- ]
889
- },
890
- "x": 11,
891
- "y": 131
892
- },
893
- {
894
- "id": 24,
895
- "type": "add",
896
- "parameters": {},
897
- "x": 981.5,
898
- "y": 809
899
- },
900
- {
901
- "id": 25,
902
- "type": "const",
903
- "parameters": {
904
- "value": [
905
- 0,
906
- 0,
907
- 0
908
- ]
909
- },
910
- "x": 905,
911
- "y": 678
912
- },
913
- {
914
- "id": 26,
915
- "type": "add",
916
- "parameters": {},
917
- "x": 1367.5,
918
- "y": 735
919
- },
920
- {
921
- "id": 27,
922
- "type": "simplex3",
923
- "parameters": {},
924
- "x": 1662,
925
- "y": 735
926
- },
927
- {
928
- "id": 28,
929
- "type": "const",
930
- "parameters": {
931
- "value": [
932
- 17.3,
933
- 5.1,
934
- 31.7
935
- ]
936
- },
937
- "x": 905,
938
- "y": 930.5
939
- },
940
- {
941
- "id": 29,
942
- "type": "add",
943
- "parameters": {},
944
- "x": 1367.5,
945
- "y": 865.5
946
- },
947
- {
948
- "id": 30,
949
- "type": "simplex3",
950
- "parameters": {},
951
- "x": 1662,
952
- "y": 865.5
953
- },
954
- {
955
- "id": 31,
956
- "type": "const",
957
- "parameters": {
958
- "value": [
959
- 73.9,
960
- 41.3,
961
- 11.5
962
- ]
963
- },
964
- "x": 905,
965
- "y": 1061.5
966
- },
967
- {
968
- "id": 32,
969
- "type": "add",
970
- "parameters": {},
971
- "x": 1367.5,
972
- "y": 1044.5
973
- },
974
- {
975
- "id": 33,
976
- "type": "simplex3",
977
- "parameters": {},
978
- "x": 1662,
979
- "y": 1044.5
980
- },
981
- {
982
- "id": 34,
983
- "type": "vec3",
984
- "parameters": {},
985
- "x": 1961,
986
- "y": 850.5
987
- },
988
- {
989
- "id": 35,
990
- "type": "scale",
991
- "parameters": {},
992
- "x": 2237,
993
- "y": 963.5
994
- },
995
- {
996
- "id": 36,
997
- "type": "const",
998
- "parameters": {
999
- "value": [
1000
- 1.2
1001
- ]
1002
- },
1003
- "x": 1948,
1004
- "y": 980.5
1005
- },
1006
- {
1007
- "id": 37,
1008
- "type": "add",
1009
- "parameters": {},
1010
- "x": 2453,
1011
- "y": 840
1012
- },
1013
- {
1014
- "id": 38,
1015
- "type": "attribute",
1016
- "parameters": {
1017
- "name": "velocity"
1018
- },
1019
- "x": 2670,
1020
- "y": 237.5
1021
- },
1022
- {
1023
- "id": 39,
1024
- "type": "scale",
1025
- "parameters": {},
1026
- "x": 2705.5,
1027
- "y": 902.25
1028
- },
1029
- {
1030
- "id": 40,
1031
- "type": "add",
1032
- "parameters": {},
1033
- "x": 2957,
1034
- "y": 828.25
1035
- },
1036
- {
1037
- "id": 41,
1038
- "type": "setAttribute",
1039
- "parameters": {
1040
- "name": "velocity"
1041
- },
1042
- "x": 3174,
1043
- "y": 828.25
1044
- },
1045
- {
1046
- "id": 42,
1047
- "type": "attribute",
1048
- "parameters": {
1049
- "name": "position"
1050
- },
1051
- "x": 3174,
1052
- "y": 10.25
1053
- },
1054
- {
1055
- "id": 43,
1056
- "type": "scale",
1057
- "parameters": {},
1058
- "x": 3209.5,
1059
- "y": 141.25
1060
- },
1061
- {
1062
- "id": 44,
1063
- "type": "add",
1064
- "parameters": {},
1065
- "x": 3461,
1066
- "y": 103.5
1067
- },
1068
- {
1069
- "id": 45,
1070
- "type": "setAttribute",
1071
- "parameters": {
1072
- "name": "position"
1073
- },
1074
- "x": 3678,
1075
- "y": 103.5
1076
- },
1077
- {
1078
- "id": 46,
1079
- "type": "attribute",
1080
- "parameters": {
1081
- "name": "size0"
1082
- },
1083
- "x": 946.5,
1084
- "y": 1266
1085
- },
1086
- {
1087
- "id": 47,
1088
- "type": "curveLiteral",
1089
- "parameters": {
1090
- "curve": {
1091
- "keys": [
1092
- {
1093
- "time": 0,
1094
- "value": 1,
1095
- "inTangent": 0,
1096
- "outTangent": 0
1097
- },
1098
- {
1099
- "time": 1,
1100
- "value": 0.85,
1101
- "inTangent": 0,
1102
- "outTangent": 0
1103
- }
1104
- ]
1105
- }
1106
- },
1107
- "x": 889,
1108
- "y": 1496.75
1109
- },
1110
- {
1111
- "id": 48,
1112
- "type": "mul",
1113
- "parameters": {},
1114
- "x": 1361,
1115
- "y": 1323
1116
- },
1117
- {
1118
- "id": 49,
1119
- "type": "setAttribute",
1120
- "parameters": {
1121
- "name": "size"
1122
- },
1123
- "x": 1661,
1124
- "y": 1323
1125
- },
1126
- {
1127
- "id": 50,
1128
- "type": "attribute",
1129
- "parameters": {
1130
- "name": "spin_rate"
1131
- },
1132
- "x": 12,
1133
- "y": 1465.5
1134
- },
1135
- {
1136
- "id": 51,
1137
- "type": "attribute",
1138
- "parameters": {
1139
- "name": "spin"
1140
- },
1141
- "x": 12,
1142
- "y": 1596.5
1143
- },
1144
- {
1145
- "id": 52,
1146
- "type": "mad",
1147
- "parameters": {},
1148
- "x": 327,
1149
- "y": 1514
1150
- },
1151
- {
1152
- "id": 53,
1153
- "type": "setAttribute",
1154
- "parameters": {
1155
- "name": "spin"
1156
- },
1157
- "x": 601,
1158
- "y": 1514
1159
- },
1160
- {
1161
- "id": 54,
1162
- "type": "gradientRGBA",
1163
- "parameters": {
1164
- "stops": [
1165
- {
1166
- "position": 0,
1167
- "color": [
1168
- 0.16,
1169
- 0.08,
1170
- 0.03,
1171
- 0
1172
- ]
1173
- },
1174
- {
1175
- "position": 0.12,
1176
- "color": [
1177
- 0.1,
1178
- 0.05,
1179
- 0.02,
1180
- 0.85
1181
- ]
1182
- },
1183
- {
1184
- "position": 0.45,
1185
- "color": [
1186
- 0.02,
1187
- 0.018,
1188
- 0.016,
1189
- 0.8
1190
- ]
1191
- },
1192
- {
1193
- "position": 0.85,
1194
- "color": [
1195
- 0.012,
1196
- 0.012,
1197
- 0.014,
1198
- 0.55
1199
- ]
1200
- },
1201
- {
1202
- "position": 1,
1203
- "color": [
1204
- 0.01,
1205
- 0.01,
1206
- 0.012,
1207
- 0
1208
- ]
1209
- }
1210
- ]
1211
- },
1212
- "x": 889,
1213
- "y": 1840.75
1214
- },
1215
- {
1216
- "id": 55,
1217
- "type": "setAttribute",
1218
- "parameters": {
1219
- "name": "color"
1220
- },
1221
- "x": 1332.5,
1222
- "y": 1840.75
1223
- }
1224
- ],
1225
- "connections": [
1226
- {
1227
- "from": 1,
1228
- "fromPort": "out",
1229
- "to": 2,
1230
- "toPort": "a"
1231
- },
1232
- {
1233
- "from": 0,
1234
- "fromPort": "out",
1235
- "to": 2,
1236
- "toPort": "b"
1237
- },
1238
- {
1239
- "from": 2,
1240
- "fromPort": "out",
1241
- "to": 3,
1242
- "toPort": "value"
1243
- },
1244
- {
1245
- "from": 2,
1246
- "fromPort": "out",
1247
- "to": 5,
1248
- "toPort": "a"
1249
- },
1250
- {
1251
- "from": 4,
1252
- "fromPort": "out",
1253
- "to": 5,
1254
- "toPort": "b"
1255
- },
1256
- {
1257
- "from": 5,
1258
- "fromPort": "out",
1259
- "to": 6,
1260
- "toPort": "a"
1261
- },
1262
- {
1263
- "from": 7,
1264
- "fromPort": "out",
1265
- "to": 6,
1266
- "toPort": "b"
1267
- },
1268
- {
1269
- "from": 6,
1270
- "fromPort": "out",
1271
- "to": 8,
1272
- "toPort": "condition"
1273
- },
1274
- {
1275
- "from": 12,
1276
- "fromPort": "out",
1277
- "to": 11,
1278
- "toPort": "a"
1279
- },
1280
- {
1281
- "from": 5,
1282
- "fromPort": "out",
1283
- "to": 11,
1284
- "toPort": "b"
1285
- },
1286
- {
1287
- "from": 11,
1288
- "fromPort": "out",
1289
- "to": 13,
1290
- "toPort": "x"
1291
- },
1292
- {
1293
- "from": 9,
1294
- "fromPort": "out",
1295
- "to": 14,
1296
- "toPort": "a"
1297
- },
1298
- {
1299
- "from": 10,
1300
- "fromPort": "out",
1301
- "to": 14,
1302
- "toPort": "b"
1303
- },
1304
- {
1305
- "from": 13,
1306
- "fromPort": "out",
1307
- "to": 14,
1308
- "toPort": "t"
1309
- },
1310
- {
1311
- "from": 15,
1312
- "fromPort": "out",
1313
- "to": 16,
1314
- "toPort": "a"
1315
- },
1316
- {
1317
- "from": 17,
1318
- "fromPort": "out",
1319
- "to": 16,
1320
- "toPort": "b"
1321
- },
1322
- {
1323
- "from": 18,
1324
- "fromPort": "out",
1325
- "to": 19,
1326
- "toPort": "x"
1327
- },
1328
- {
1329
- "from": 16,
1330
- "fromPort": "out",
1331
- "to": 19,
1332
- "toPort": "y"
1333
- },
1334
- {
1335
- "from": 20,
1336
- "fromPort": "out",
1337
- "to": 19,
1338
- "toPort": "z"
1339
- },
1340
- {
1341
- "from": 21,
1342
- "fromPort": "out",
1343
- "to": 22,
1344
- "toPort": "v"
1345
- },
1346
- {
1347
- "from": 23,
1348
- "fromPort": "out",
1349
- "to": 22,
1350
- "toPort": "s"
1351
- },
1352
- {
1353
- "from": 22,
1354
- "fromPort": "out",
1355
- "to": 24,
1356
- "toPort": "a"
1357
- },
1358
- {
1359
- "from": 19,
1360
- "fromPort": "out",
1361
- "to": 24,
1362
- "toPort": "b"
1363
- },
1364
- {
1365
- "from": 24,
1366
- "fromPort": "out",
1367
- "to": 26,
1368
- "toPort": "a"
1369
- },
1370
- {
1371
- "from": 25,
1372
- "fromPort": "out",
1373
- "to": 26,
1374
- "toPort": "b"
1375
- },
1376
- {
1377
- "from": 26,
1378
- "fromPort": "out",
1379
- "to": 27,
1380
- "toPort": "p"
1381
- },
1382
- {
1383
- "from": 24,
1384
- "fromPort": "out",
1385
- "to": 29,
1386
- "toPort": "a"
1387
- },
1388
- {
1389
- "from": 28,
1390
- "fromPort": "out",
1391
- "to": 29,
1392
- "toPort": "b"
1393
- },
1394
- {
1395
- "from": 29,
1396
- "fromPort": "out",
1397
- "to": 30,
1398
- "toPort": "p"
1399
- },
1400
- {
1401
- "from": 24,
1402
- "fromPort": "out",
1403
- "to": 32,
1404
- "toPort": "a"
1405
- },
1406
- {
1407
- "from": 31,
1408
- "fromPort": "out",
1409
- "to": 32,
1410
- "toPort": "b"
1411
- },
1412
- {
1413
- "from": 32,
1414
- "fromPort": "out",
1415
- "to": 33,
1416
- "toPort": "p"
1417
- },
1418
- {
1419
- "from": 27,
1420
- "fromPort": "out",
1421
- "to": 34,
1422
- "toPort": "x"
1423
- },
1424
- {
1425
- "from": 30,
1426
- "fromPort": "out",
1427
- "to": 34,
1428
- "toPort": "y"
1429
- },
1430
- {
1431
- "from": 33,
1432
- "fromPort": "out",
1433
- "to": 34,
1434
- "toPort": "z"
1435
- },
1436
- {
1437
- "from": 34,
1438
- "fromPort": "out",
1439
- "to": 35,
1440
- "toPort": "v"
1441
- },
1442
- {
1443
- "from": 36,
1444
- "fromPort": "out",
1445
- "to": 35,
1446
- "toPort": "s"
1447
- },
1448
- {
1449
- "from": 14,
1450
- "fromPort": "out",
1451
- "to": 37,
1452
- "toPort": "a"
1453
- },
1454
- {
1455
- "from": 35,
1456
- "fromPort": "out",
1457
- "to": 37,
1458
- "toPort": "b"
1459
- },
1460
- {
1461
- "from": 37,
1462
- "fromPort": "out",
1463
- "to": 39,
1464
- "toPort": "v"
1465
- },
1466
- {
1467
- "from": 0,
1468
- "fromPort": "out",
1469
- "to": 39,
1470
- "toPort": "s"
1471
- },
1472
- {
1473
- "from": 38,
1474
- "fromPort": "out",
1475
- "to": 40,
1476
- "toPort": "a"
1477
- },
1478
- {
1479
- "from": 39,
1480
- "fromPort": "out",
1481
- "to": 40,
1482
- "toPort": "b"
1483
- },
1484
- {
1485
- "from": 40,
1486
- "fromPort": "out",
1487
- "to": 41,
1488
- "toPort": "value"
1489
- },
1490
- {
1491
- "from": 40,
1492
- "fromPort": "out",
1493
- "to": 43,
1494
- "toPort": "v"
1495
- },
1496
- {
1497
- "from": 0,
1498
- "fromPort": "out",
1499
- "to": 43,
1500
- "toPort": "s"
1501
- },
1502
- {
1503
- "from": 42,
1504
- "fromPort": "out",
1505
- "to": 44,
1506
- "toPort": "a"
1507
- },
1508
- {
1509
- "from": 43,
1510
- "fromPort": "out",
1511
- "to": 44,
1512
- "toPort": "b"
1513
- },
1514
- {
1515
- "from": 44,
1516
- "fromPort": "out",
1517
- "to": 45,
1518
- "toPort": "value"
1519
- },
1520
- {
1521
- "from": 5,
1522
- "fromPort": "out",
1523
- "to": 47,
1524
- "toPort": "t"
1525
- },
1526
- {
1527
- "from": 46,
1528
- "fromPort": "out",
1529
- "to": 48,
1530
- "toPort": "a"
1531
- },
1532
- {
1533
- "from": 47,
1534
- "fromPort": "out",
1535
- "to": 48,
1536
- "toPort": "b"
1537
- },
1538
- {
1539
- "from": 48,
1540
- "fromPort": "out",
1541
- "to": 49,
1542
- "toPort": "value"
1543
- },
1544
- {
1545
- "from": 50,
1546
- "fromPort": "out",
1547
- "to": 52,
1548
- "toPort": "a"
1549
- },
1550
- {
1551
- "from": 0,
1552
- "fromPort": "out",
1553
- "to": 52,
1554
- "toPort": "b"
1555
- },
1556
- {
1557
- "from": 51,
1558
- "fromPort": "out",
1559
- "to": 52,
1560
- "toPort": "c"
1561
- },
1562
- {
1563
- "from": 52,
1564
- "fromPort": "out",
1565
- "to": 53,
1566
- "toPort": "value"
1567
- },
1568
- {
1569
- "from": 5,
1570
- "fromPort": "out",
1571
- "to": 54,
1572
- "toPort": "t"
1573
- },
1574
- {
1575
- "from": 54,
1576
- "fromPort": "out",
1577
- "to": 55,
1578
- "toPort": "value"
1579
- }
1580
- ]
1581
- },
1582
- "emitter": {
1583
- "spawn_rate": 75,
1584
- "prewarm": 3,
1585
- "blend": 0,
1586
- "projection": 0,
1587
- "lighting": false,
1588
- "soft_depth": true,
1589
- "sort": false,
1590
- "cull": false,
1591
- "texture": null,
1592
- "flipbook": [
1593
- 1,
1594
- 1
1595
- ],
1596
- "render": {
1597
- "position": "position",
1598
- "size": "size",
1599
- "color": "color",
1600
- "rotation": "spin"
1601
- }
1602
- },
1603
- "source": "graph",
1604
- "assembly": "",
1605
- "optimize": true
1
+ {
2
+ "name": "soot",
3
+ "attributes": [
4
+ {
5
+ "name": "position",
6
+ "components": 3
7
+ },
8
+ {
9
+ "name": "velocity",
10
+ "components": 3
11
+ },
12
+ {
13
+ "name": "age",
14
+ "components": 1
15
+ },
16
+ {
17
+ "name": "life",
18
+ "components": 1
19
+ },
20
+ {
21
+ "name": "size",
22
+ "components": 1
23
+ },
24
+ {
25
+ "name": "size0",
26
+ "components": 1
27
+ },
28
+ {
29
+ "name": "color",
30
+ "components": 4
31
+ },
32
+ {
33
+ "name": "spin",
34
+ "components": 1
35
+ },
36
+ {
37
+ "name": "spin_rate",
38
+ "components": 1
39
+ },
40
+ {
41
+ "name": "seed",
42
+ "components": 1
43
+ }
44
+ ],
45
+ "groups": [],
46
+ "init": {
47
+ "nodes": [
48
+ {
49
+ "id": 18,
50
+ "type": "builtin",
51
+ "parameters": {
52
+ "id": 2
53
+ },
54
+ "x": 1524.266787905249,
55
+ "y": -95.60801223873777
56
+ },
57
+ {
58
+ "id": 19,
59
+ "type": "add",
60
+ "parameters": {},
61
+ "x": 1835,
62
+ "y": 2.5
63
+ },
64
+ {
65
+ "id": 20,
66
+ "type": "setAttribute",
67
+ "parameters": {
68
+ "name": "position"
69
+ },
70
+ "x": 2055,
71
+ "y": 2.5
72
+ },
73
+ {
74
+ "id": 21,
75
+ "type": "const",
76
+ "parameters": {
77
+ "value": [
78
+ 0,
79
+ 1.9,
80
+ 0
81
+ ]
82
+ },
83
+ "x": 481.25,
84
+ "y": 551.5
85
+ },
86
+ {
87
+ "id": 22,
88
+ "type": "random",
89
+ "parameters": {
90
+ "components": 3
91
+ },
92
+ "x": 0,
93
+ "y": 559.5
94
+ },
95
+ {
96
+ "id": 23,
97
+ "type": "mad",
98
+ "parameters": {},
99
+ "x": 220,
100
+ "y": 645.5
101
+ },
102
+ {
103
+ "id": 24,
104
+ "type": "const",
105
+ "parameters": {
106
+ "value": [
107
+ 2
108
+ ]
109
+ },
110
+ "x": 3.75,
111
+ "y": 661.5
112
+ },
113
+ {
114
+ "id": 25,
115
+ "type": "const",
116
+ "parameters": {
117
+ "value": [
118
+ -1
119
+ ]
120
+ },
121
+ "x": 3.75,
122
+ "y": 755.5
123
+ },
124
+ {
125
+ "id": 26,
126
+ "type": "scale",
127
+ "parameters": {},
128
+ "x": 470,
129
+ "y": 711
130
+ },
131
+ {
132
+ "id": 27,
133
+ "type": "const",
134
+ "parameters": {
135
+ "value": [
136
+ 0.7
137
+ ]
138
+ },
139
+ "x": 231.25,
140
+ "y": 771.5
141
+ },
142
+ {
143
+ "id": 28,
144
+ "type": "add",
145
+ "parameters": {},
146
+ "x": 705,
147
+ "y": 695
148
+ },
149
+ {
150
+ "id": 29,
151
+ "type": "setAttribute",
152
+ "parameters": {
153
+ "name": "velocity"
154
+ },
155
+ "x": 925,
156
+ "y": 695
157
+ },
158
+ {
159
+ "id": 30,
160
+ "type": "random",
161
+ "parameters": {
162
+ "components": 1
163
+ },
164
+ "x": 0,
165
+ "y": 959.5
166
+ },
167
+ {
168
+ "id": 31,
169
+ "type": "mad",
170
+ "parameters": {},
171
+ "x": 220,
172
+ "y": 1076.5
173
+ },
174
+ {
175
+ "id": 32,
176
+ "type": "const",
177
+ "parameters": {
178
+ "value": [
179
+ 0.03
180
+ ]
181
+ },
182
+ "x": 3.75,
183
+ "y": 1053.5
184
+ },
185
+ {
186
+ "id": 33,
187
+ "type": "const",
188
+ "parameters": {
189
+ "value": [
190
+ 0.02
191
+ ]
192
+ },
193
+ "x": 3.75,
194
+ "y": 1147.5
195
+ },
196
+ {
197
+ "id": 34,
198
+ "type": "setAttribute",
199
+ "parameters": {
200
+ "name": "age"
201
+ },
202
+ "x": 205,
203
+ "y": 465.5
204
+ },
205
+ {
206
+ "id": 35,
207
+ "type": "const",
208
+ "parameters": {
209
+ "value": [
210
+ 0
211
+ ]
212
+ },
213
+ "x": 3.75,
214
+ "y": 465.5
215
+ },
216
+ {
217
+ "id": 36,
218
+ "type": "random",
219
+ "parameters": {
220
+ "components": 1
221
+ },
222
+ "x": 0,
223
+ "y": 1241.5
224
+ },
225
+ {
226
+ "id": 37,
227
+ "type": "mad",
228
+ "parameters": {},
229
+ "x": 220,
230
+ "y": 1358.5
231
+ },
232
+ {
233
+ "id": 38,
234
+ "type": "const",
235
+ "parameters": {
236
+ "value": [
237
+ 2.6
238
+ ]
239
+ },
240
+ "x": 3.75,
241
+ "y": 1335.5
242
+ },
243
+ {
244
+ "id": 39,
245
+ "type": "const",
246
+ "parameters": {
247
+ "value": [
248
+ 2.6
249
+ ]
250
+ },
251
+ "x": 3.75,
252
+ "y": 1429.5
253
+ },
254
+ {
255
+ "id": 40,
256
+ "type": "setAttribute",
257
+ "parameters": {
258
+ "name": "life"
259
+ },
260
+ "x": 455,
261
+ "y": 1358.5
262
+ },
263
+ {
264
+ "id": 41,
265
+ "type": "setAttribute",
266
+ "parameters": {
267
+ "name": "size0"
268
+ },
269
+ "x": 455,
270
+ "y": 951.5
271
+ },
272
+ {
273
+ "id": 42,
274
+ "type": "setAttribute",
275
+ "parameters": {
276
+ "name": "size"
277
+ },
278
+ "x": 455,
279
+ "y": 1123.5
280
+ },
281
+ {
282
+ "id": 43,
283
+ "type": "setAttribute",
284
+ "parameters": {
285
+ "name": "color"
286
+ },
287
+ "x": 205,
288
+ "y": 865.5
289
+ },
290
+ {
291
+ "id": 44,
292
+ "type": "const",
293
+ "parameters": {
294
+ "value": [
295
+ 1,
296
+ 1,
297
+ 1,
298
+ 0
299
+ ]
300
+ },
301
+ "x": 3.75,
302
+ "y": 865.5
303
+ },
304
+ {
305
+ "id": 45,
306
+ "type": "random",
307
+ "parameters": {
308
+ "components": 1
309
+ },
310
+ "x": 0,
311
+ "y": 1523.5
312
+ },
313
+ {
314
+ "id": 46,
315
+ "type": "mad",
316
+ "parameters": {},
317
+ "x": 220,
318
+ "y": 1640.5
319
+ },
320
+ {
321
+ "id": 47,
322
+ "type": "const",
323
+ "parameters": {
324
+ "value": [
325
+ 6.28
326
+ ]
327
+ },
328
+ "x": 3.75,
329
+ "y": 1617.5
330
+ },
331
+ {
332
+ "id": 48,
333
+ "type": "const",
334
+ "parameters": {
335
+ "value": [
336
+ -3.14
337
+ ]
338
+ },
339
+ "x": 3.75,
340
+ "y": 1711.5
341
+ },
342
+ {
343
+ "id": 49,
344
+ "type": "setAttribute",
345
+ "parameters": {
346
+ "name": "spin"
347
+ },
348
+ "x": 455,
349
+ "y": 1640.5
350
+ },
351
+ {
352
+ "id": 50,
353
+ "type": "random",
354
+ "parameters": {
355
+ "components": 1
356
+ },
357
+ "x": 0,
358
+ "y": 1805.5
359
+ },
360
+ {
361
+ "id": 51,
362
+ "type": "mad",
363
+ "parameters": {},
364
+ "x": 220,
365
+ "y": 1922.5
366
+ },
367
+ {
368
+ "id": 52,
369
+ "type": "const",
370
+ "parameters": {
371
+ "value": [
372
+ 14
373
+ ]
374
+ },
375
+ "x": 3.75,
376
+ "y": 1899.5
377
+ },
378
+ {
379
+ "id": 53,
380
+ "type": "const",
381
+ "parameters": {
382
+ "value": [
383
+ -7
384
+ ]
385
+ },
386
+ "x": 3.75,
387
+ "y": 1993.5
388
+ },
389
+ {
390
+ "id": 54,
391
+ "type": "setAttribute",
392
+ "parameters": {
393
+ "name": "spin_rate"
394
+ },
395
+ "x": 455,
396
+ "y": 1922.5
397
+ },
398
+ {
399
+ "id": 55,
400
+ "type": "random",
401
+ "parameters": {
402
+ "components": 1
403
+ },
404
+ "x": 0,
405
+ "y": 2087.5
406
+ },
407
+ {
408
+ "id": 56,
409
+ "type": "mad",
410
+ "parameters": {},
411
+ "x": 220,
412
+ "y": 2204.5
413
+ },
414
+ {
415
+ "id": 57,
416
+ "type": "const",
417
+ "parameters": {
418
+ "value": [
419
+ 64
420
+ ]
421
+ },
422
+ "x": 3.75,
423
+ "y": 2181.5
424
+ },
425
+ {
426
+ "id": 58,
427
+ "type": "const",
428
+ "parameters": {
429
+ "value": [
430
+ 0
431
+ ]
432
+ },
433
+ "x": 3.75,
434
+ "y": 2275.5
435
+ },
436
+ {
437
+ "id": 59,
438
+ "type": "setAttribute",
439
+ "parameters": {
440
+ "name": "seed"
441
+ },
442
+ "x": 455,
443
+ "y": 2204.5
444
+ },
445
+ {
446
+ "id": 0,
447
+ "type": "sampleSphereVolume",
448
+ "parameters": {},
449
+ "x": 1580.274926377338,
450
+ "y": 95.7984954592288
451
+ },
452
+ {
453
+ "id": 1,
454
+ "type": "random",
455
+ "parameters": {
456
+ "components": 3
457
+ },
458
+ "x": 1288.9516890851849,
459
+ "y": 82.30089373140704
460
+ }
461
+ ],
462
+ "connections": [
463
+ {
464
+ "from": 18,
465
+ "fromPort": "out",
466
+ "to": 19,
467
+ "toPort": "a"
468
+ },
469
+ {
470
+ "from": 19,
471
+ "fromPort": "out",
472
+ "to": 20,
473
+ "toPort": "value"
474
+ },
475
+ {
476
+ "from": 22,
477
+ "fromPort": "out",
478
+ "to": 23,
479
+ "toPort": "a"
480
+ },
481
+ {
482
+ "from": 24,
483
+ "fromPort": "out",
484
+ "to": 23,
485
+ "toPort": "b"
486
+ },
487
+ {
488
+ "from": 25,
489
+ "fromPort": "out",
490
+ "to": 23,
491
+ "toPort": "c"
492
+ },
493
+ {
494
+ "from": 23,
495
+ "fromPort": "out",
496
+ "to": 26,
497
+ "toPort": "v"
498
+ },
499
+ {
500
+ "from": 27,
501
+ "fromPort": "out",
502
+ "to": 26,
503
+ "toPort": "s"
504
+ },
505
+ {
506
+ "from": 21,
507
+ "fromPort": "out",
508
+ "to": 28,
509
+ "toPort": "a"
510
+ },
511
+ {
512
+ "from": 26,
513
+ "fromPort": "out",
514
+ "to": 28,
515
+ "toPort": "b"
516
+ },
517
+ {
518
+ "from": 28,
519
+ "fromPort": "out",
520
+ "to": 29,
521
+ "toPort": "value"
522
+ },
523
+ {
524
+ "from": 30,
525
+ "fromPort": "out",
526
+ "to": 31,
527
+ "toPort": "a"
528
+ },
529
+ {
530
+ "from": 32,
531
+ "fromPort": "out",
532
+ "to": 31,
533
+ "toPort": "b"
534
+ },
535
+ {
536
+ "from": 33,
537
+ "fromPort": "out",
538
+ "to": 31,
539
+ "toPort": "c"
540
+ },
541
+ {
542
+ "from": 35,
543
+ "fromPort": "out",
544
+ "to": 34,
545
+ "toPort": "value"
546
+ },
547
+ {
548
+ "from": 36,
549
+ "fromPort": "out",
550
+ "to": 37,
551
+ "toPort": "a"
552
+ },
553
+ {
554
+ "from": 38,
555
+ "fromPort": "out",
556
+ "to": 37,
557
+ "toPort": "b"
558
+ },
559
+ {
560
+ "from": 39,
561
+ "fromPort": "out",
562
+ "to": 37,
563
+ "toPort": "c"
564
+ },
565
+ {
566
+ "from": 37,
567
+ "fromPort": "out",
568
+ "to": 40,
569
+ "toPort": "value"
570
+ },
571
+ {
572
+ "from": 31,
573
+ "fromPort": "out",
574
+ "to": 41,
575
+ "toPort": "value"
576
+ },
577
+ {
578
+ "from": 31,
579
+ "fromPort": "out",
580
+ "to": 42,
581
+ "toPort": "value"
582
+ },
583
+ {
584
+ "from": 44,
585
+ "fromPort": "out",
586
+ "to": 43,
587
+ "toPort": "value"
588
+ },
589
+ {
590
+ "from": 45,
591
+ "fromPort": "out",
592
+ "to": 46,
593
+ "toPort": "a"
594
+ },
595
+ {
596
+ "from": 47,
597
+ "fromPort": "out",
598
+ "to": 46,
599
+ "toPort": "b"
600
+ },
601
+ {
602
+ "from": 48,
603
+ "fromPort": "out",
604
+ "to": 46,
605
+ "toPort": "c"
606
+ },
607
+ {
608
+ "from": 46,
609
+ "fromPort": "out",
610
+ "to": 49,
611
+ "toPort": "value"
612
+ },
613
+ {
614
+ "from": 50,
615
+ "fromPort": "out",
616
+ "to": 51,
617
+ "toPort": "a"
618
+ },
619
+ {
620
+ "from": 52,
621
+ "fromPort": "out",
622
+ "to": 51,
623
+ "toPort": "b"
624
+ },
625
+ {
626
+ "from": 53,
627
+ "fromPort": "out",
628
+ "to": 51,
629
+ "toPort": "c"
630
+ },
631
+ {
632
+ "from": 51,
633
+ "fromPort": "out",
634
+ "to": 54,
635
+ "toPort": "value"
636
+ },
637
+ {
638
+ "from": 55,
639
+ "fromPort": "out",
640
+ "to": 56,
641
+ "toPort": "a"
642
+ },
643
+ {
644
+ "from": 57,
645
+ "fromPort": "out",
646
+ "to": 56,
647
+ "toPort": "b"
648
+ },
649
+ {
650
+ "from": 58,
651
+ "fromPort": "out",
652
+ "to": 56,
653
+ "toPort": "c"
654
+ },
655
+ {
656
+ "from": 56,
657
+ "fromPort": "out",
658
+ "to": 59,
659
+ "toPort": "value"
660
+ },
661
+ {
662
+ "from": 0,
663
+ "fromPort": "out",
664
+ "to": 19,
665
+ "toPort": "b"
666
+ },
667
+ {
668
+ "from": 1,
669
+ "fromPort": "out",
670
+ "to": 0,
671
+ "toPort": "uvw"
672
+ }
673
+ ]
674
+ },
675
+ "update": {
676
+ "nodes": [
677
+ {
678
+ "id": 0,
679
+ "type": "builtin",
680
+ "parameters": {
681
+ "id": 0
682
+ },
683
+ "x": 0,
684
+ "y": 1070.5
685
+ },
686
+ {
687
+ "id": 1,
688
+ "type": "attribute",
689
+ "parameters": {
690
+ "name": "age"
691
+ },
692
+ "x": 12,
693
+ "y": 1334.5
694
+ },
695
+ {
696
+ "id": 2,
697
+ "type": "add",
698
+ "parameters": {},
699
+ "x": 347,
700
+ "y": 1334.5
701
+ },
702
+ {
703
+ "id": 3,
704
+ "type": "setAttribute",
705
+ "parameters": {
706
+ "name": "age"
707
+ },
708
+ "x": 601,
709
+ "y": 1334.5
710
+ },
711
+ {
712
+ "id": 4,
713
+ "type": "attribute",
714
+ "parameters": {
715
+ "name": "life"
716
+ },
717
+ "x": 312,
718
+ "y": 1685.75
719
+ },
720
+ {
721
+ "id": 5,
722
+ "type": "div",
723
+ "parameters": {},
724
+ "x": 635,
725
+ "y": 1668.75
726
+ },
727
+ {
728
+ "id": 6,
729
+ "type": "compare",
730
+ "parameters": {
731
+ "op": "ge"
732
+ },
733
+ "x": 973,
734
+ "y": 2038.75
735
+ },
736
+ {
737
+ "id": 7,
738
+ "type": "const",
739
+ "parameters": {
740
+ "value": [
741
+ 1
742
+ ]
743
+ },
744
+ "x": 600,
745
+ "y": 2055.75
746
+ },
747
+ {
748
+ "id": 8,
749
+ "type": "kill",
750
+ "parameters": {},
751
+ "x": 1352.5,
752
+ "y": 2038.75
753
+ },
754
+ {
755
+ "id": 9,
756
+ "type": "const",
757
+ "parameters": {
758
+ "value": [
759
+ 0,
760
+ 2.6,
761
+ 0
762
+ ]
763
+ },
764
+ "x": 1291,
765
+ "y": 303
766
+ },
767
+ {
768
+ "id": 10,
769
+ "type": "const",
770
+ "parameters": {
771
+ "value": [
772
+ 0,
773
+ -2.4,
774
+ 0
775
+ ]
776
+ },
777
+ "x": 1291,
778
+ "y": 434
779
+ },
780
+ {
781
+ "id": 11,
782
+ "type": "mul",
783
+ "parameters": {},
784
+ "x": 975,
785
+ "y": 565
786
+ },
787
+ {
788
+ "id": 12,
789
+ "type": "const",
790
+ "parameters": {
791
+ "value": [
792
+ 2.4
793
+ ]
794
+ },
795
+ "x": 600,
796
+ "y": 565
797
+ },
798
+ {
799
+ "id": 13,
800
+ "type": "saturate",
801
+ "parameters": {},
802
+ "x": 1361,
803
+ "y": 565
804
+ },
805
+ {
806
+ "id": 14,
807
+ "type": "mix",
808
+ "parameters": {},
809
+ "x": 1696,
810
+ "y": 386
811
+ },
812
+ {
813
+ "id": 15,
814
+ "type": "builtin",
815
+ "parameters": {
816
+ "id": 7
817
+ },
818
+ "x": 0,
819
+ "y": 262
820
+ },
821
+ {
822
+ "id": 16,
823
+ "type": "mul",
824
+ "parameters": {},
825
+ "x": 340.5,
826
+ "y": 922.75
827
+ },
828
+ {
829
+ "id": 17,
830
+ "type": "const",
831
+ "parameters": {
832
+ "value": [
833
+ -0.35
834
+ ]
835
+ },
836
+ "x": 11,
837
+ "y": 590.5
838
+ },
839
+ {
840
+ "id": 18,
841
+ "type": "attribute",
842
+ "parameters": {
843
+ "name": "seed"
844
+ },
845
+ "x": 312,
846
+ "y": 408.75
847
+ },
848
+ {
849
+ "id": 19,
850
+ "type": "vec3",
851
+ "parameters": {},
852
+ "x": 613,
853
+ "y": 848.75
854
+ },
855
+ {
856
+ "id": 20,
857
+ "type": "const",
858
+ "parameters": {
859
+ "value": [
860
+ 0
861
+ ]
862
+ },
863
+ "x": 311,
864
+ "y": 1035.75
865
+ },
866
+ {
867
+ "id": 21,
868
+ "type": "attribute",
869
+ "parameters": {
870
+ "name": "position"
871
+ },
872
+ "x": 12,
873
+ "y": 0
874
+ },
875
+ {
876
+ "id": 22,
877
+ "type": "scale",
878
+ "parameters": {},
879
+ "x": 347.5,
880
+ "y": 65.75
881
+ },
882
+ {
883
+ "id": 23,
884
+ "type": "const",
885
+ "parameters": {
886
+ "value": [
887
+ 0.9
888
+ ]
889
+ },
890
+ "x": 11,
891
+ "y": 131
892
+ },
893
+ {
894
+ "id": 24,
895
+ "type": "add",
896
+ "parameters": {},
897
+ "x": 981.5,
898
+ "y": 809
899
+ },
900
+ {
901
+ "id": 25,
902
+ "type": "const",
903
+ "parameters": {
904
+ "value": [
905
+ 0,
906
+ 0,
907
+ 0
908
+ ]
909
+ },
910
+ "x": 905,
911
+ "y": 678
912
+ },
913
+ {
914
+ "id": 26,
915
+ "type": "add",
916
+ "parameters": {},
917
+ "x": 1367.5,
918
+ "y": 735
919
+ },
920
+ {
921
+ "id": 27,
922
+ "type": "simplex3",
923
+ "parameters": {},
924
+ "x": 1662,
925
+ "y": 735
926
+ },
927
+ {
928
+ "id": 28,
929
+ "type": "const",
930
+ "parameters": {
931
+ "value": [
932
+ 17.3,
933
+ 5.1,
934
+ 31.7
935
+ ]
936
+ },
937
+ "x": 905,
938
+ "y": 930.5
939
+ },
940
+ {
941
+ "id": 29,
942
+ "type": "add",
943
+ "parameters": {},
944
+ "x": 1367.5,
945
+ "y": 865.5
946
+ },
947
+ {
948
+ "id": 30,
949
+ "type": "simplex3",
950
+ "parameters": {},
951
+ "x": 1662,
952
+ "y": 865.5
953
+ },
954
+ {
955
+ "id": 31,
956
+ "type": "const",
957
+ "parameters": {
958
+ "value": [
959
+ 73.9,
960
+ 41.3,
961
+ 11.5
962
+ ]
963
+ },
964
+ "x": 905,
965
+ "y": 1061.5
966
+ },
967
+ {
968
+ "id": 32,
969
+ "type": "add",
970
+ "parameters": {},
971
+ "x": 1367.5,
972
+ "y": 1044.5
973
+ },
974
+ {
975
+ "id": 33,
976
+ "type": "simplex3",
977
+ "parameters": {},
978
+ "x": 1662,
979
+ "y": 1044.5
980
+ },
981
+ {
982
+ "id": 34,
983
+ "type": "vec3",
984
+ "parameters": {},
985
+ "x": 1961,
986
+ "y": 850.5
987
+ },
988
+ {
989
+ "id": 35,
990
+ "type": "scale",
991
+ "parameters": {},
992
+ "x": 2237,
993
+ "y": 963.5
994
+ },
995
+ {
996
+ "id": 36,
997
+ "type": "const",
998
+ "parameters": {
999
+ "value": [
1000
+ 1.2
1001
+ ]
1002
+ },
1003
+ "x": 1948,
1004
+ "y": 980.5
1005
+ },
1006
+ {
1007
+ "id": 37,
1008
+ "type": "add",
1009
+ "parameters": {},
1010
+ "x": 2453,
1011
+ "y": 840
1012
+ },
1013
+ {
1014
+ "id": 38,
1015
+ "type": "attribute",
1016
+ "parameters": {
1017
+ "name": "velocity"
1018
+ },
1019
+ "x": 2670,
1020
+ "y": 237.5
1021
+ },
1022
+ {
1023
+ "id": 39,
1024
+ "type": "scale",
1025
+ "parameters": {},
1026
+ "x": 2705.5,
1027
+ "y": 902.25
1028
+ },
1029
+ {
1030
+ "id": 40,
1031
+ "type": "add",
1032
+ "parameters": {},
1033
+ "x": 2957,
1034
+ "y": 828.25
1035
+ },
1036
+ {
1037
+ "id": 41,
1038
+ "type": "setAttribute",
1039
+ "parameters": {
1040
+ "name": "velocity"
1041
+ },
1042
+ "x": 3174,
1043
+ "y": 828.25
1044
+ },
1045
+ {
1046
+ "id": 42,
1047
+ "type": "attribute",
1048
+ "parameters": {
1049
+ "name": "position"
1050
+ },
1051
+ "x": 3174,
1052
+ "y": 10.25
1053
+ },
1054
+ {
1055
+ "id": 43,
1056
+ "type": "scale",
1057
+ "parameters": {},
1058
+ "x": 3209.5,
1059
+ "y": 141.25
1060
+ },
1061
+ {
1062
+ "id": 44,
1063
+ "type": "add",
1064
+ "parameters": {},
1065
+ "x": 3461,
1066
+ "y": 103.5
1067
+ },
1068
+ {
1069
+ "id": 45,
1070
+ "type": "setAttribute",
1071
+ "parameters": {
1072
+ "name": "position"
1073
+ },
1074
+ "x": 3678,
1075
+ "y": 103.5
1076
+ },
1077
+ {
1078
+ "id": 46,
1079
+ "type": "attribute",
1080
+ "parameters": {
1081
+ "name": "size0"
1082
+ },
1083
+ "x": 946.5,
1084
+ "y": 1266
1085
+ },
1086
+ {
1087
+ "id": 47,
1088
+ "type": "curveLiteral",
1089
+ "parameters": {
1090
+ "curve": {
1091
+ "keys": [
1092
+ {
1093
+ "time": 0,
1094
+ "value": 1,
1095
+ "inTangent": 0,
1096
+ "outTangent": 0
1097
+ },
1098
+ {
1099
+ "time": 1,
1100
+ "value": 0.85,
1101
+ "inTangent": 0,
1102
+ "outTangent": 0
1103
+ }
1104
+ ]
1105
+ }
1106
+ },
1107
+ "x": 889,
1108
+ "y": 1496.75
1109
+ },
1110
+ {
1111
+ "id": 48,
1112
+ "type": "mul",
1113
+ "parameters": {},
1114
+ "x": 1361,
1115
+ "y": 1323
1116
+ },
1117
+ {
1118
+ "id": 49,
1119
+ "type": "setAttribute",
1120
+ "parameters": {
1121
+ "name": "size"
1122
+ },
1123
+ "x": 1661,
1124
+ "y": 1323
1125
+ },
1126
+ {
1127
+ "id": 50,
1128
+ "type": "attribute",
1129
+ "parameters": {
1130
+ "name": "spin_rate"
1131
+ },
1132
+ "x": 12,
1133
+ "y": 1465.5
1134
+ },
1135
+ {
1136
+ "id": 51,
1137
+ "type": "attribute",
1138
+ "parameters": {
1139
+ "name": "spin"
1140
+ },
1141
+ "x": 12,
1142
+ "y": 1596.5
1143
+ },
1144
+ {
1145
+ "id": 52,
1146
+ "type": "mad",
1147
+ "parameters": {},
1148
+ "x": 327,
1149
+ "y": 1514
1150
+ },
1151
+ {
1152
+ "id": 53,
1153
+ "type": "setAttribute",
1154
+ "parameters": {
1155
+ "name": "spin"
1156
+ },
1157
+ "x": 601,
1158
+ "y": 1514
1159
+ },
1160
+ {
1161
+ "id": 54,
1162
+ "type": "gradientRGBA",
1163
+ "parameters": {
1164
+ "stops": [
1165
+ {
1166
+ "position": 0,
1167
+ "color": [
1168
+ 0.06,
1169
+ 0.05,
1170
+ 0.045,
1171
+ 0
1172
+ ]
1173
+ },
1174
+ {
1175
+ "position": 0.12,
1176
+ "color": [
1177
+ 0.05,
1178
+ 0.045,
1179
+ 0.04,
1180
+ 0.85
1181
+ ]
1182
+ },
1183
+ {
1184
+ "position": 0.45,
1185
+ "color": [
1186
+ 0.04,
1187
+ 0.04,
1188
+ 0.04,
1189
+ 0.8
1190
+ ]
1191
+ },
1192
+ {
1193
+ "position": 0.85,
1194
+ "color": [
1195
+ 0.035,
1196
+ 0.035,
1197
+ 0.035,
1198
+ 0.55
1199
+ ]
1200
+ },
1201
+ {
1202
+ "position": 1,
1203
+ "color": [
1204
+ 0.035,
1205
+ 0.035,
1206
+ 0.035,
1207
+ 0
1208
+ ]
1209
+ }
1210
+ ]
1211
+ },
1212
+ "x": 889,
1213
+ "y": 1840.75
1214
+ },
1215
+ {
1216
+ "id": 55,
1217
+ "type": "setAttribute",
1218
+ "parameters": {
1219
+ "name": "color"
1220
+ },
1221
+ "x": 1332.5,
1222
+ "y": 1840.75
1223
+ }
1224
+ ],
1225
+ "connections": [
1226
+ {
1227
+ "from": 1,
1228
+ "fromPort": "out",
1229
+ "to": 2,
1230
+ "toPort": "a"
1231
+ },
1232
+ {
1233
+ "from": 0,
1234
+ "fromPort": "out",
1235
+ "to": 2,
1236
+ "toPort": "b"
1237
+ },
1238
+ {
1239
+ "from": 2,
1240
+ "fromPort": "out",
1241
+ "to": 3,
1242
+ "toPort": "value"
1243
+ },
1244
+ {
1245
+ "from": 2,
1246
+ "fromPort": "out",
1247
+ "to": 5,
1248
+ "toPort": "a"
1249
+ },
1250
+ {
1251
+ "from": 4,
1252
+ "fromPort": "out",
1253
+ "to": 5,
1254
+ "toPort": "b"
1255
+ },
1256
+ {
1257
+ "from": 5,
1258
+ "fromPort": "out",
1259
+ "to": 6,
1260
+ "toPort": "a"
1261
+ },
1262
+ {
1263
+ "from": 7,
1264
+ "fromPort": "out",
1265
+ "to": 6,
1266
+ "toPort": "b"
1267
+ },
1268
+ {
1269
+ "from": 6,
1270
+ "fromPort": "out",
1271
+ "to": 8,
1272
+ "toPort": "condition"
1273
+ },
1274
+ {
1275
+ "from": 12,
1276
+ "fromPort": "out",
1277
+ "to": 11,
1278
+ "toPort": "a"
1279
+ },
1280
+ {
1281
+ "from": 5,
1282
+ "fromPort": "out",
1283
+ "to": 11,
1284
+ "toPort": "b"
1285
+ },
1286
+ {
1287
+ "from": 11,
1288
+ "fromPort": "out",
1289
+ "to": 13,
1290
+ "toPort": "x"
1291
+ },
1292
+ {
1293
+ "from": 9,
1294
+ "fromPort": "out",
1295
+ "to": 14,
1296
+ "toPort": "a"
1297
+ },
1298
+ {
1299
+ "from": 10,
1300
+ "fromPort": "out",
1301
+ "to": 14,
1302
+ "toPort": "b"
1303
+ },
1304
+ {
1305
+ "from": 13,
1306
+ "fromPort": "out",
1307
+ "to": 14,
1308
+ "toPort": "t"
1309
+ },
1310
+ {
1311
+ "from": 15,
1312
+ "fromPort": "out",
1313
+ "to": 16,
1314
+ "toPort": "a"
1315
+ },
1316
+ {
1317
+ "from": 17,
1318
+ "fromPort": "out",
1319
+ "to": 16,
1320
+ "toPort": "b"
1321
+ },
1322
+ {
1323
+ "from": 18,
1324
+ "fromPort": "out",
1325
+ "to": 19,
1326
+ "toPort": "x"
1327
+ },
1328
+ {
1329
+ "from": 16,
1330
+ "fromPort": "out",
1331
+ "to": 19,
1332
+ "toPort": "y"
1333
+ },
1334
+ {
1335
+ "from": 20,
1336
+ "fromPort": "out",
1337
+ "to": 19,
1338
+ "toPort": "z"
1339
+ },
1340
+ {
1341
+ "from": 21,
1342
+ "fromPort": "out",
1343
+ "to": 22,
1344
+ "toPort": "v"
1345
+ },
1346
+ {
1347
+ "from": 23,
1348
+ "fromPort": "out",
1349
+ "to": 22,
1350
+ "toPort": "s"
1351
+ },
1352
+ {
1353
+ "from": 22,
1354
+ "fromPort": "out",
1355
+ "to": 24,
1356
+ "toPort": "a"
1357
+ },
1358
+ {
1359
+ "from": 19,
1360
+ "fromPort": "out",
1361
+ "to": 24,
1362
+ "toPort": "b"
1363
+ },
1364
+ {
1365
+ "from": 24,
1366
+ "fromPort": "out",
1367
+ "to": 26,
1368
+ "toPort": "a"
1369
+ },
1370
+ {
1371
+ "from": 25,
1372
+ "fromPort": "out",
1373
+ "to": 26,
1374
+ "toPort": "b"
1375
+ },
1376
+ {
1377
+ "from": 26,
1378
+ "fromPort": "out",
1379
+ "to": 27,
1380
+ "toPort": "p"
1381
+ },
1382
+ {
1383
+ "from": 24,
1384
+ "fromPort": "out",
1385
+ "to": 29,
1386
+ "toPort": "a"
1387
+ },
1388
+ {
1389
+ "from": 28,
1390
+ "fromPort": "out",
1391
+ "to": 29,
1392
+ "toPort": "b"
1393
+ },
1394
+ {
1395
+ "from": 29,
1396
+ "fromPort": "out",
1397
+ "to": 30,
1398
+ "toPort": "p"
1399
+ },
1400
+ {
1401
+ "from": 24,
1402
+ "fromPort": "out",
1403
+ "to": 32,
1404
+ "toPort": "a"
1405
+ },
1406
+ {
1407
+ "from": 31,
1408
+ "fromPort": "out",
1409
+ "to": 32,
1410
+ "toPort": "b"
1411
+ },
1412
+ {
1413
+ "from": 32,
1414
+ "fromPort": "out",
1415
+ "to": 33,
1416
+ "toPort": "p"
1417
+ },
1418
+ {
1419
+ "from": 27,
1420
+ "fromPort": "out",
1421
+ "to": 34,
1422
+ "toPort": "x"
1423
+ },
1424
+ {
1425
+ "from": 30,
1426
+ "fromPort": "out",
1427
+ "to": 34,
1428
+ "toPort": "y"
1429
+ },
1430
+ {
1431
+ "from": 33,
1432
+ "fromPort": "out",
1433
+ "to": 34,
1434
+ "toPort": "z"
1435
+ },
1436
+ {
1437
+ "from": 34,
1438
+ "fromPort": "out",
1439
+ "to": 35,
1440
+ "toPort": "v"
1441
+ },
1442
+ {
1443
+ "from": 36,
1444
+ "fromPort": "out",
1445
+ "to": 35,
1446
+ "toPort": "s"
1447
+ },
1448
+ {
1449
+ "from": 14,
1450
+ "fromPort": "out",
1451
+ "to": 37,
1452
+ "toPort": "a"
1453
+ },
1454
+ {
1455
+ "from": 35,
1456
+ "fromPort": "out",
1457
+ "to": 37,
1458
+ "toPort": "b"
1459
+ },
1460
+ {
1461
+ "from": 37,
1462
+ "fromPort": "out",
1463
+ "to": 39,
1464
+ "toPort": "v"
1465
+ },
1466
+ {
1467
+ "from": 0,
1468
+ "fromPort": "out",
1469
+ "to": 39,
1470
+ "toPort": "s"
1471
+ },
1472
+ {
1473
+ "from": 38,
1474
+ "fromPort": "out",
1475
+ "to": 40,
1476
+ "toPort": "a"
1477
+ },
1478
+ {
1479
+ "from": 39,
1480
+ "fromPort": "out",
1481
+ "to": 40,
1482
+ "toPort": "b"
1483
+ },
1484
+ {
1485
+ "from": 40,
1486
+ "fromPort": "out",
1487
+ "to": 41,
1488
+ "toPort": "value"
1489
+ },
1490
+ {
1491
+ "from": 40,
1492
+ "fromPort": "out",
1493
+ "to": 43,
1494
+ "toPort": "v"
1495
+ },
1496
+ {
1497
+ "from": 0,
1498
+ "fromPort": "out",
1499
+ "to": 43,
1500
+ "toPort": "s"
1501
+ },
1502
+ {
1503
+ "from": 42,
1504
+ "fromPort": "out",
1505
+ "to": 44,
1506
+ "toPort": "a"
1507
+ },
1508
+ {
1509
+ "from": 43,
1510
+ "fromPort": "out",
1511
+ "to": 44,
1512
+ "toPort": "b"
1513
+ },
1514
+ {
1515
+ "from": 44,
1516
+ "fromPort": "out",
1517
+ "to": 45,
1518
+ "toPort": "value"
1519
+ },
1520
+ {
1521
+ "from": 5,
1522
+ "fromPort": "out",
1523
+ "to": 47,
1524
+ "toPort": "t"
1525
+ },
1526
+ {
1527
+ "from": 46,
1528
+ "fromPort": "out",
1529
+ "to": 48,
1530
+ "toPort": "a"
1531
+ },
1532
+ {
1533
+ "from": 47,
1534
+ "fromPort": "out",
1535
+ "to": 48,
1536
+ "toPort": "b"
1537
+ },
1538
+ {
1539
+ "from": 48,
1540
+ "fromPort": "out",
1541
+ "to": 49,
1542
+ "toPort": "value"
1543
+ },
1544
+ {
1545
+ "from": 50,
1546
+ "fromPort": "out",
1547
+ "to": 52,
1548
+ "toPort": "a"
1549
+ },
1550
+ {
1551
+ "from": 0,
1552
+ "fromPort": "out",
1553
+ "to": 52,
1554
+ "toPort": "b"
1555
+ },
1556
+ {
1557
+ "from": 51,
1558
+ "fromPort": "out",
1559
+ "to": 52,
1560
+ "toPort": "c"
1561
+ },
1562
+ {
1563
+ "from": 52,
1564
+ "fromPort": "out",
1565
+ "to": 53,
1566
+ "toPort": "value"
1567
+ },
1568
+ {
1569
+ "from": 5,
1570
+ "fromPort": "out",
1571
+ "to": 54,
1572
+ "toPort": "t"
1573
+ },
1574
+ {
1575
+ "from": 54,
1576
+ "fromPort": "out",
1577
+ "to": 55,
1578
+ "toPort": "value"
1579
+ }
1580
+ ]
1581
+ },
1582
+ "emitter": {
1583
+ "spawn_rate": 75,
1584
+ "prewarm": 3,
1585
+ "blend": 0,
1586
+ "projection": 0,
1587
+ "lighting": true,
1588
+ "soft_depth": true,
1589
+ "sort": false,
1590
+ "cull": false,
1591
+ "texture": null,
1592
+ "flipbook": [
1593
+ 1,
1594
+ 1
1595
+ ],
1596
+ "render": {
1597
+ "position": "position",
1598
+ "size": "size",
1599
+ "color": "color",
1600
+ "rotation": "spin"
1601
+ }
1602
+ },
1603
+ "source": "graph",
1604
+ "assembly": "",
1605
+ "optimize": true
1606
1606
  }