@babylonjs/core 9.2.0 → 9.2.2
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/Animations/animation.d.ts +9 -0
- package/Animations/animation.js +9 -0
- package/Animations/animation.js.map +1 -1
- package/Animations/runtimeAnimation.js +28 -0
- package/Animations/runtimeAnimation.js.map +1 -1
- package/Cameras/Inputs/geospatialCameraPointersInput.js +10 -8
- package/Cameras/Inputs/geospatialCameraPointersInput.js.map +1 -1
- package/Cameras/geospatialCameraMovement.js +21 -21
- package/Cameras/geospatialCameraMovement.js.map +1 -1
- package/Debug/physicsViewer.js +2 -12
- package/Debug/physicsViewer.js.map +1 -1
- package/Engines/abstractEngine.js +2 -2
- package/Engines/abstractEngine.js.map +1 -1
- package/Engines/webgpuEngine.js +2 -0
- package/Engines/webgpuEngine.js.map +1 -1
- package/FlowGraph/Blocks/flowGraphBlockFactory.js +14 -1
- package/FlowGraph/Blocks/flowGraphBlockFactory.js.map +1 -1
- package/FlowGraph/flowGraph.js +6 -0
- package/FlowGraph/flowGraph.js.map +1 -1
- package/FlowGraph/flowGraphEventBlock.d.ts +10 -0
- package/FlowGraph/flowGraphEventBlock.js +24 -0
- package/FlowGraph/flowGraphEventBlock.js.map +1 -1
- package/FlowGraph/flowGraphParser.js +23 -4
- package/FlowGraph/flowGraphParser.js.map +1 -1
- package/FlowGraph/serialization.js +36 -14
- package/FlowGraph/serialization.js.map +1 -1
- package/FrameGraph/Node/Blocks/Rendering/iblShadowsRendererBlock.d.ts +105 -0
- package/FrameGraph/Node/Blocks/Rendering/iblShadowsRendererBlock.js +318 -0
- package/FrameGraph/Node/Blocks/Rendering/iblShadowsRendererBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/index.d.ts +1 -0
- package/FrameGraph/Node/Blocks/index.js +1 -0
- package/FrameGraph/Node/Blocks/index.js.map +1 -1
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsAccumulationTask.d.ts +34 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsAccumulationTask.js +144 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsAccumulationTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsSpatialBlurTask.d.ts +26 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsSpatialBlurTask.js +82 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsSpatialBlurTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsTracingTask.d.ts +61 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsTracingTask.js +207 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsTracingTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsVoxelizationTask.d.ts +104 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsVoxelizationTask.js +218 -0
- package/FrameGraph/Tasks/Rendering/iblShadows/iblShadowsVoxelizationTask.js.map +1 -0
- package/FrameGraph/Tasks/Rendering/iblShadowsRendererTask.d.ts +217 -0
- package/FrameGraph/Tasks/Rendering/iblShadowsRendererTask.js +640 -0
- package/FrameGraph/Tasks/Rendering/iblShadowsRendererTask.js.map +1 -0
- package/FrameGraph/frameGraph.js +1 -0
- package/FrameGraph/frameGraph.js.map +1 -1
- package/FrameGraph/index.d.ts +1 -0
- package/FrameGraph/index.js +1 -0
- package/FrameGraph/index.js.map +1 -1
- package/Gizmos/boundingBoxGizmo.js +4 -0
- package/Gizmos/boundingBoxGizmo.js.map +1 -1
- package/Layers/thinEffectLayer.js +8 -1
- package/Layers/thinEffectLayer.js.map +1 -1
- package/Lights/Clustered/clusteredLightContainer.js +8 -5
- package/Lights/Clustered/clusteredLightContainer.js.map +1 -1
- package/Loading/Plugins/babylonFileLoader.js +26 -0
- package/Loading/Plugins/babylonFileLoader.js.map +1 -1
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.js +15 -2
- package/Materials/GaussianSplatting/gaussianSplattingMaterial.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +3 -1
- package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
- package/Materials/PBR/openpbrMaterial.d.ts +13 -2
- package/Materials/PBR/openpbrMaterial.js +47 -16
- package/Materials/PBR/openpbrMaterial.js.map +1 -1
- package/Materials/PBR/pbrBRDFConfiguration.js +1 -1
- package/Materials/PBR/pbrBRDFConfiguration.js.map +1 -1
- package/Materials/Textures/Filtering/hdrFiltering.js +6 -0
- package/Materials/Textures/Filtering/hdrFiltering.js.map +1 -1
- package/Materials/Textures/envCubeTexture.js +13 -13
- package/Materials/Textures/envCubeTexture.js.map +1 -1
- package/Materials/materialHelper.functions.js +1 -1
- package/Materials/materialHelper.functions.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingCompoundMesh.d.ts +18 -4
- package/Meshes/GaussianSplatting/gaussianSplattingCompoundMesh.js +29 -4
- package/Meshes/GaussianSplatting/gaussianSplattingCompoundMesh.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.d.ts +48 -8
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.js +373 -84
- package/Meshes/GaussianSplatting/gaussianSplattingMesh.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.d.ts +39 -4
- package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.js +152 -47
- package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.js.map +1 -1
- package/Meshes/GaussianSplatting/gaussianSplattingPartProxyMesh.d.ts +61 -7
- package/Meshes/GaussianSplatting/gaussianSplattingPartProxyMesh.js +94 -11
- package/Meshes/GaussianSplatting/gaussianSplattingPartProxyMesh.js.map +1 -1
- package/Meshes/mesh.d.ts +15 -0
- package/Meshes/mesh.js +40 -1
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/transformNode.js +2 -2
- package/Meshes/transformNode.js.map +1 -1
- package/Misc/sceneSerializer.js +2 -1
- package/Misc/sceneSerializer.js.map +1 -1
- package/Misc/textureTools.d.ts +3 -1
- package/Misc/textureTools.js +74 -13
- package/Misc/textureTools.js.map +1 -1
- package/Misc/tools.js +1 -1
- package/Misc/tools.js.map +1 -1
- package/Particles/baseParticleSystem.d.ts +47 -1
- package/Particles/baseParticleSystem.js +88 -0
- package/Particles/baseParticleSystem.js.map +1 -1
- package/Particles/computeShaderParticleSystem.js +12 -0
- package/Particles/computeShaderParticleSystem.js.map +1 -1
- package/Particles/gpuParticleSystem.d.ts +61 -25
- package/Particles/gpuParticleSystem.js +249 -75
- package/Particles/gpuParticleSystem.js.map +1 -1
- package/Particles/particleSystem.d.ts +0 -6
- package/Particles/particleSystem.js +3 -14
- package/Particles/particleSystem.js.map +1 -1
- package/Particles/thinParticleSystem.d.ts +1 -17
- package/Particles/thinParticleSystem.js +1 -50
- package/Particles/thinParticleSystem.js.map +1 -1
- package/Particles/webgl2ParticleSystem.d.ts +1 -0
- package/Particles/webgl2ParticleSystem.js +18 -2
- package/Particles/webgl2ParticleSystem.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsAccumulationPass.js +1 -1
- package/Rendering/IBLShadows/iblShadowsAccumulationPass.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsPluginMaterial.d.ts +3 -1
- package/Rendering/IBLShadows/iblShadowsPluginMaterial.js +11 -1
- package/Rendering/IBLShadows/iblShadowsPluginMaterial.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.d.ts +0 -19
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.js +21 -65
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.d.ts +15 -52
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.js +129 -220
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsVoxelTracingPass.js +3 -0
- package/Rendering/IBLShadows/iblShadowsVoxelTracingPass.js.map +1 -1
- package/Rendering/depthRenderer.js +6 -0
- package/Rendering/depthRenderer.js.map +1 -1
- package/Rendering/geometryBufferRenderer.d.ts +14 -5
- package/Rendering/geometryBufferRenderer.js +6 -2
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Rendering/geometryBufferRendererSceneComponent.d.ts +4 -6
- package/Rendering/geometryBufferRendererSceneComponent.js.map +1 -1
- package/Rendering/iblCdfGenerator.d.ts +10 -0
- package/Rendering/iblCdfGenerator.js +52 -17
- package/Rendering/iblCdfGenerator.js.map +1 -1
- package/Rendering/index.d.ts +0 -6
- package/Rendering/index.js +0 -6
- package/Rendering/index.js.map +1 -1
- package/Shaders/ShadersInclude/gaussianSplatting.js +25 -4
- package/Shaders/ShadersInclude/gaussianSplatting.js.map +1 -1
- package/Shaders/ShadersInclude/openpbrDirectLighting.js +6 -1
- package/Shaders/ShadersInclude/openpbrDirectLighting.js.map +1 -1
- package/Shaders/ShadersInclude/openpbrEnvironmentLighting.js +1 -1
- package/Shaders/ShadersInclude/openpbrEnvironmentLighting.js.map +1 -1
- package/Shaders/gaussianSplatting.vertex.js +3 -0
- package/Shaders/gaussianSplatting.vertex.js.map +1 -1
- package/Shaders/gpuRenderParticles.vertex.js +14 -2
- package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
- package/Shaders/gpuUpdateParticles.vertex.js +24 -6
- package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
- package/Shaders/iblShadowVoxelTracing.fragment.js +5 -1
- package/Shaders/iblShadowVoxelTracing.fragment.js.map +1 -1
- package/Shaders/iblVoxelGrid.fragment.d.ts +1 -0
- package/Shaders/iblVoxelGrid.fragment.js +33 -5
- package/Shaders/iblVoxelGrid.fragment.js.map +1 -1
- package/Shaders/{iblVoxelSlabDebug.fragment.d.ts → lod3D.fragment.d.ts} +1 -1
- package/Shaders/lod3D.fragment.js +13 -0
- package/Shaders/lod3D.fragment.js.map +1 -0
- package/Shaders/openpbr.fragment.js +5 -0
- package/Shaders/openpbr.fragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.js +37 -5
- package/ShadersWGSL/ShadersInclude/gaussianSplatting.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrDirectLighting.js +6 -1
- package/ShadersWGSL/ShadersInclude/openpbrDirectLighting.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrEnvironmentLighting.js +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrEnvironmentLighting.js.map +1 -1
- package/ShadersWGSL/gaussianSplatting.vertex.js +3 -0
- package/ShadersWGSL/gaussianSplatting.vertex.js.map +1 -1
- package/ShadersWGSL/gpuUpdateParticles.compute.js +29 -8
- package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
- package/ShadersWGSL/iblShadowVoxelTracing.fragment.js +5 -1
- package/ShadersWGSL/iblShadowVoxelTracing.fragment.js.map +1 -1
- package/ShadersWGSL/iblVoxelGrid.fragment.js +1 -1
- package/ShadersWGSL/iblVoxelGrid.fragment.js.map +1 -1
- package/{Shaders/iblVoxelSlabDebug.vertex.d.ts → ShadersWGSL/lod3D.fragment.d.ts} +1 -1
- package/ShadersWGSL/lod3D.fragment.js +13 -0
- package/ShadersWGSL/lod3D.fragment.js.map +1 -0
- package/ShadersWGSL/openpbr.fragment.js +5 -0
- package/ShadersWGSL/openpbr.fragment.js.map +1 -1
- package/package.json +1 -1
- package/Shaders/iblVoxelGrid3dDebug.fragment.d.ts +0 -5
- package/Shaders/iblVoxelGrid3dDebug.fragment.js +0 -24
- package/Shaders/iblVoxelGrid3dDebug.fragment.js.map +0 -1
- package/Shaders/iblVoxelSlabDebug.fragment.js +0 -13
- package/Shaders/iblVoxelSlabDebug.fragment.js.map +0 -1
- package/Shaders/iblVoxelSlabDebug.vertex.js +0 -11
- package/Shaders/iblVoxelSlabDebug.vertex.js.map +0 -1
- package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.d.ts +0 -5
- package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js +0 -23
- package/ShadersWGSL/iblVoxelGrid3dDebug.fragment.js.map +0 -1
- package/ShadersWGSL/iblVoxelSlabDebug.fragment.d.ts +0 -5
- package/ShadersWGSL/iblVoxelSlabDebug.fragment.js +0 -14
- package/ShadersWGSL/iblVoxelSlabDebug.fragment.js.map +0 -1
- package/ShadersWGSL/iblVoxelSlabDebug.vertex.d.ts +0 -5
- package/ShadersWGSL/iblVoxelSlabDebug.vertex.js +0 -12
- package/ShadersWGSL/iblVoxelSlabDebug.vertex.js.map +0 -1
|
@@ -6,6 +6,7 @@ import { Color4 } from "../Maths/math.color.js";
|
|
|
6
6
|
import { VertexBuffer } from "../Buffers/buffer.js";
|
|
7
7
|
import { type IParticleSystem } from "./IParticleSystem.js";
|
|
8
8
|
import { BaseParticleSystem } from "./baseParticleSystem.js";
|
|
9
|
+
import { Attractor } from "./attractor.js";
|
|
9
10
|
import { BoxParticleEmitter } from "../Particles/EmitterTypes/boxParticleEmitter.js";
|
|
10
11
|
import { type IDisposable, Scene } from "../scene.js";
|
|
11
12
|
import { type Effect } from "../Materials/effect.js";
|
|
@@ -70,6 +71,22 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
70
71
|
private readonly _rawTextureWidth;
|
|
71
72
|
private _platform;
|
|
72
73
|
private _rebuildingAfterContextLost;
|
|
74
|
+
/**
|
|
75
|
+
* Whether the particle buffer needs to store the initial emission direction.
|
|
76
|
+
* True when particles are not billboarded (they orient by direction) or when
|
|
77
|
+
* using stretched-local billboard mode (stretches along initial direction).
|
|
78
|
+
* @internal
|
|
79
|
+
*/
|
|
80
|
+
get _needsInitialDirection(): boolean;
|
|
81
|
+
private _currentEmitRateGradient;
|
|
82
|
+
private _currentEmitRate1;
|
|
83
|
+
private _currentEmitRate2;
|
|
84
|
+
private _currentStartSizeGradient;
|
|
85
|
+
private _currentStartSize1;
|
|
86
|
+
private _currentStartSize2;
|
|
87
|
+
private _startSizeGradientFactor;
|
|
88
|
+
private _lifeTimeGradientMin;
|
|
89
|
+
private _lifeTimeGradientMax;
|
|
73
90
|
/**
|
|
74
91
|
* Specifies if the particle system should be serialized
|
|
75
92
|
*/
|
|
@@ -129,6 +146,18 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
129
146
|
isLocal: boolean;
|
|
130
147
|
/** Indicates that the particle system is GPU based */
|
|
131
148
|
readonly isGPU = true;
|
|
149
|
+
/** Attractors */
|
|
150
|
+
/**
|
|
151
|
+
* Maximum number of attractors for this GPU particle system instance.
|
|
152
|
+
* Determined at construction time via the `maxAttractors` option (default 8).
|
|
153
|
+
* Limited by the fixed-size uniform arrays in the update shaders.
|
|
154
|
+
*/
|
|
155
|
+
readonly maxAttractors: number;
|
|
156
|
+
/**
|
|
157
|
+
* Add an attractor to the particle system. Attractors are used to change the direction of the particles in the system.
|
|
158
|
+
* @param attractor - The attractor to add to the particle system
|
|
159
|
+
*/
|
|
160
|
+
addAttractor(attractor: Attractor): void;
|
|
132
161
|
/** Gets or sets a matrix to use to compute projection */
|
|
133
162
|
defaultProjectionMatrix: Matrix;
|
|
134
163
|
/**
|
|
@@ -321,14 +350,14 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
321
350
|
_limitVelocityGradientsTexture: RawTexture;
|
|
322
351
|
/** @internal */
|
|
323
352
|
_dragGradientsTexture: RawTexture;
|
|
324
|
-
private _addFactorGradient;
|
|
325
353
|
/**
|
|
326
354
|
* Adds a new size gradient
|
|
327
355
|
* @param gradient defines the gradient to use (between 0 and 1)
|
|
328
356
|
* @param factor defines the size factor to affect to the specified gradient
|
|
357
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
329
358
|
* @returns the current particle system
|
|
330
359
|
*/
|
|
331
|
-
addSizeGradient(gradient: number, factor: number): GPUParticleSystem;
|
|
360
|
+
addSizeGradient(gradient: number, factor: number, factor2?: number): GPUParticleSystem;
|
|
332
361
|
/**
|
|
333
362
|
* Remove a specific size gradient
|
|
334
363
|
* @param gradient defines the gradient to remove
|
|
@@ -340,9 +369,10 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
340
369
|
* Adds a new angular speed gradient
|
|
341
370
|
* @param gradient defines the gradient to use (between 0 and 1)
|
|
342
371
|
* @param factor defines the angular speed to affect to the specified gradient
|
|
372
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
343
373
|
* @returns the current particle system
|
|
344
374
|
*/
|
|
345
|
-
addAngularSpeedGradient(gradient: number, factor: number): GPUParticleSystem;
|
|
375
|
+
addAngularSpeedGradient(gradient: number, factor: number, factor2?: number): GPUParticleSystem;
|
|
346
376
|
/**
|
|
347
377
|
* Remove a specific angular speed gradient
|
|
348
378
|
* @param gradient defines the gradient to remove
|
|
@@ -353,9 +383,10 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
353
383
|
* Adds a new velocity gradient
|
|
354
384
|
* @param gradient defines the gradient to use (between 0 and 1)
|
|
355
385
|
* @param factor defines the velocity to affect to the specified gradient
|
|
386
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
356
387
|
* @returns the current particle system
|
|
357
388
|
*/
|
|
358
|
-
addVelocityGradient(gradient: number, factor: number): GPUParticleSystem;
|
|
389
|
+
addVelocityGradient(gradient: number, factor: number, factor2?: number): GPUParticleSystem;
|
|
359
390
|
/**
|
|
360
391
|
* Remove a specific velocity gradient
|
|
361
392
|
* @param gradient defines the gradient to remove
|
|
@@ -366,9 +397,10 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
366
397
|
* Adds a new limit velocity gradient
|
|
367
398
|
* @param gradient defines the gradient to use (between 0 and 1)
|
|
368
399
|
* @param factor defines the limit velocity value to affect to the specified gradient
|
|
400
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
369
401
|
* @returns the current particle system
|
|
370
402
|
*/
|
|
371
|
-
addLimitVelocityGradient(gradient: number, factor: number): GPUParticleSystem;
|
|
403
|
+
addLimitVelocityGradient(gradient: number, factor: number, factor2?: number): GPUParticleSystem;
|
|
372
404
|
/**
|
|
373
405
|
* Remove a specific limit velocity gradient
|
|
374
406
|
* @param gradient defines the gradient to remove
|
|
@@ -379,9 +411,10 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
379
411
|
* Adds a new drag gradient
|
|
380
412
|
* @param gradient defines the gradient to use (between 0 and 1)
|
|
381
413
|
* @param factor defines the drag value to affect to the specified gradient
|
|
414
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
382
415
|
* @returns the current particle system
|
|
383
416
|
*/
|
|
384
|
-
addDragGradient(gradient: number, factor: number): GPUParticleSystem;
|
|
417
|
+
addDragGradient(gradient: number, factor: number, factor2?: number): GPUParticleSystem;
|
|
385
418
|
/**
|
|
386
419
|
* Remove a specific drag gradient
|
|
387
420
|
* @param gradient defines the gradient to remove
|
|
@@ -389,25 +422,19 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
389
422
|
*/
|
|
390
423
|
removeDragGradient(gradient: number): GPUParticleSystem;
|
|
391
424
|
/**
|
|
392
|
-
*
|
|
393
|
-
* @
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
/**
|
|
397
|
-
* Not supported by GPUParticleSystem
|
|
398
|
-
* @returns the current particle system
|
|
399
|
-
*/
|
|
400
|
-
removeEmitRateGradient(): IParticleSystem;
|
|
401
|
-
/**
|
|
402
|
-
* Not supported by GPUParticleSystem
|
|
425
|
+
* Adds a new start size gradient (please note that this will only work if you set the targetStopDuration property)
|
|
426
|
+
* @param gradient defines the gradient to use (between 0 and 1)
|
|
427
|
+
* @param factor defines the start size factor to affect to the specified gradient
|
|
428
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
403
429
|
* @returns the current particle system
|
|
404
430
|
*/
|
|
405
|
-
addStartSizeGradient(): IParticleSystem;
|
|
431
|
+
addStartSizeGradient(gradient: number, factor: number, factor2?: number): IParticleSystem;
|
|
406
432
|
/**
|
|
407
|
-
*
|
|
433
|
+
* Remove a specific start size gradient
|
|
434
|
+
* @param gradient defines the gradient to remove
|
|
408
435
|
* @returns the current particle system
|
|
409
436
|
*/
|
|
410
|
-
removeStartSizeGradient(): IParticleSystem;
|
|
437
|
+
removeStartSizeGradient(gradient: number): IParticleSystem;
|
|
411
438
|
/**
|
|
412
439
|
* Not supported by GPUParticleSystem
|
|
413
440
|
* @returns the current particle system
|
|
@@ -451,15 +478,19 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
451
478
|
get useRampGradients(): boolean;
|
|
452
479
|
set useRampGradients(value: boolean);
|
|
453
480
|
/**
|
|
454
|
-
*
|
|
481
|
+
* Adds a new life time gradient (please note that this will only work if you set the targetStopDuration property)
|
|
482
|
+
* @param gradient defines the gradient to use (between 0 and 1)
|
|
483
|
+
* @param factor defines the life time factor to affect to the specified gradient
|
|
484
|
+
* @param factor2 defines an additional factor used to define a range ([factor, factor2]) with main value to pick the final value from
|
|
455
485
|
* @returns the current particle system
|
|
456
486
|
*/
|
|
457
|
-
addLifeTimeGradient(): IParticleSystem;
|
|
487
|
+
addLifeTimeGradient(gradient: number, factor: number, factor2?: number): IParticleSystem;
|
|
458
488
|
/**
|
|
459
|
-
*
|
|
489
|
+
* Remove a specific life time gradient
|
|
490
|
+
* @param gradient defines the gradient to remove
|
|
460
491
|
* @returns the current particle system
|
|
461
492
|
*/
|
|
462
|
-
removeLifeTimeGradient(): IParticleSystem;
|
|
493
|
+
removeLifeTimeGradient(gradient: number): IParticleSystem;
|
|
463
494
|
/**
|
|
464
495
|
* Instantiates a GPU particle system.
|
|
465
496
|
* Particles are often small sprites used to simulate hard-to-reproduce phenomena like fire, smoke, water, or abstract visual effects like magic glitter and faery dust.
|
|
@@ -473,10 +504,15 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
473
504
|
capacity: number;
|
|
474
505
|
randomTextureSize: number;
|
|
475
506
|
emitRateControl: boolean;
|
|
507
|
+
maxAttractors: number;
|
|
476
508
|
}>, sceneOrEngine: Scene | AbstractEngine, customEffect?: Nullable<Effect>, isAnimationSheetEnabled?: boolean);
|
|
477
509
|
protected _reset(): void;
|
|
478
510
|
private _createVertexBuffers;
|
|
479
511
|
private _initialize;
|
|
512
|
+
/**
|
|
513
|
+
* Forces the update effect to be recreated on the next render.
|
|
514
|
+
*/
|
|
515
|
+
private _resetEffect;
|
|
480
516
|
/** @internal */
|
|
481
517
|
_recreateUpdateEffect(): boolean;
|
|
482
518
|
/**
|
|
@@ -486,7 +522,7 @@ export declare class GPUParticleSystem extends BaseParticleSystem implements IDi
|
|
|
486
522
|
/**
|
|
487
523
|
* @internal
|
|
488
524
|
*/
|
|
489
|
-
static _GetAttributeNamesOrOptions(hasColorGradients?: boolean, isAnimationSheetEnabled?: boolean, isBillboardBased?: boolean, isBillboardStretched?: boolean): string[];
|
|
525
|
+
static _GetAttributeNamesOrOptions(hasColorGradients?: boolean, isAnimationSheetEnabled?: boolean, isBillboardBased?: boolean, isBillboardStretched?: boolean, isBillboardStretchedLocal?: boolean): string[];
|
|
490
526
|
/**
|
|
491
527
|
* @internal
|
|
492
528
|
*/
|