From df181dd33f0a19b822a249aec85e28aea73bfc30 Mon Sep 17 00:00:00 2001 From: ChenMo Date: Fri, 7 Jun 2024 17:33:48 +0800 Subject: [PATCH] Revert "`ParticleRenderer` support bounds and frustum culling (#1963)" (#2109) This reverts commit 6d0fdd865865873daf1c59e0f29ddc40339c1f63. --- e2e/case/particleRenderer-dream.ts | 343 ------------- e2e/config.ts | 7 - .../Particle_particleRenderer-dream.jpg | Bin 372576 -> 0 bytes .../core/src/particle/ParticleBufferUtils.ts | 24 +- .../core/src/particle/ParticleGenerator.ts | 451 ++---------------- .../core/src/particle/ParticleRenderer.ts | 91 +--- .../src/particle/modules/EmissionModule.ts | 32 +- .../core/src/particle/modules/MainModule.ts | 179 +------ .../modules/ParticleCompositeCurve.ts | 192 +------- .../src/particle/modules/ParticleCurve.ts | 87 +--- .../modules/ParticleGeneratorModule.ts | 16 +- .../src/particle/modules/ParticleGradient.ts | 2 - .../modules/SizeOverLifetimeModule.ts | 87 +--- .../modules/VelocityOverLifetimeModule.ts | 107 +---- .../src/particle/modules/shape/BaseShape.ts | 66 +-- .../src/particle/modules/shape/BoxShape.ts | 50 +- .../src/particle/modules/shape/CircleShape.ts | 117 +---- .../src/particle/modules/shape/ConeShape.ts | 111 +---- .../particle/modules/shape/HemisphereShape.ts | 37 +- .../src/particle/modules/shape/SphereShape.ts | 36 +- .../core/particle/ParticleBoundingBox.test.ts | 428 ----------------- 21 files changed, 154 insertions(+), 2309 deletions(-) delete mode 100644 e2e/case/particleRenderer-dream.ts delete mode 100644 e2e/fixtures/originImage/Particle_particleRenderer-dream.jpg delete mode 100644 tests/src/core/particle/ParticleBoundingBox.test.ts diff --git a/e2e/case/particleRenderer-dream.ts b/e2e/case/particleRenderer-dream.ts deleted file mode 100644 index e86dbbfe4..000000000 --- a/e2e/case/particleRenderer-dream.ts +++ /dev/null @@ -1,343 +0,0 @@ -/** - * @title Particle Dream - * @category Particle - */ -import { - AssetType, - BlendMode, - BoxShape, - Camera, - Color, - Engine, - Entity, - Logger, - ParticleCurveMode, - ParticleGradientMode, - ParticleMaterial, - ParticleRenderMode, - ParticleRenderer, - Texture2D, - Vector3, - WebGLEngine, - WebGLMode -} from "@galacean/engine"; -import { initScreenshot, updateForE2E } from "./.mockForE2E"; - -// Create engine -WebGLEngine.create({ - canvas: "canvas", - graphicDeviceOptions: { webGLMode: WebGLMode.WebGL1 } -}).then((engine) => { - Logger.enable(); - engine.canvas.resizeByClientSize(); - - const scene = engine.sceneManager.activeScene; - const rootEntity = scene.createRootEntity(); - scene.background.solidColor = new Color(15 / 255, 38 / 255, 18 / 255, 1); - - // Create camera - const cameraEntity = rootEntity.createChild("camera_entity"); - cameraEntity.transform.position = new Vector3(0, 1, 3); - const camera = cameraEntity.addComponent(Camera); - camera.fieldOfView = 60; - - engine.run(); - - engine.resourceManager - .load([ - { - url: "https://mdn.alipayobjects.com/huamei_b4l2if/afts/img/A*JPsCSK5LtYkAAAAAAAAAAAAADil6AQ/original", - type: AssetType.Texture2D - }, - { - url: "https://mdn.alipayobjects.com/huamei_b4l2if/afts/img/A*eWTFRZPqfDMAAAAAAAAAAAAADil6AQ/original", - type: AssetType.Texture2D - }, - { - url: "https://mdn.alipayobjects.com/huamei_b4l2if/afts/img/A*J8uhRoxJtYgAAAAAAAAAAAAADil6AQ/original", - type: AssetType.Texture2D - }, - { - url: "https://mdn.alipayobjects.com/huamei_b4l2if/afts/img/A*Ea3qRb1yCQMAAAAAAAAAAAAADil6AQ/original", - type: AssetType.Texture2D - } - ]) - .then((textures) => { - const fireEntity = createDebrisParticle(engine, textures[0]); - createGlowParticle(fireEntity, textures[1]); - createSparksParticle(fireEntity, textures[2]); - createHighlightsParticle(fireEntity, textures[3]); - - cameraEntity.addChild(fireEntity); - - setTimeout(() => { - updateForE2E(engine); - initScreenshot(engine, camera); - }, 2000); - }); -}); - -function createDebrisParticle(engine: Engine, texture: Texture2D): Entity { - const particleEntity = new Entity(engine, "Debris"); - particleEntity.transform.position.set(0, -7.5, -8); - - const particleRenderer = particleEntity.addComponent(ParticleRenderer); - - const material = new ParticleMaterial(engine); - material.baseColor = new Color(1.0, 1.0, 1.0, 1.0); - material.blendMode = BlendMode.Additive; - material.baseTexture = texture; - particleRenderer.setMaterial(material); - particleRenderer.priority = 2; - - particleRenderer.generator.useAutoRandomSeed = false; - - const { main, emission, sizeOverLifetime, colorOverLifetime, velocityOverLifetime } = particleRenderer.generator; - - // Main module - main.startSpeed.constant = 0; - - main.startSize.constantMin = 0.1; - main.startSize.constantMax = 1; - main.startSize.mode = ParticleCurveMode.TwoConstants; - - main.startRotationZ.constantMin = 0; - main.startRotationZ.constantMax = 360; - main.startRotationZ.mode = ParticleCurveMode.TwoConstants; - - main.startColor.constantMin.set(255 / 255, 255 / 255, 255 / 255, 1.0); - main.startColor.constantMax.set(13 / 255, 255 / 255, 0 / 255, 1.0); - main.startColor.mode = ParticleGradientMode.TwoConstants; - - // Emission module - emission.rateOverTime.constant = 5; - - const boxShape = new BoxShape(); - boxShape.size.set(22, 1, 0); - emission.shape = boxShape; - - // Color over lifetime module - colorOverLifetime.enabled = true; - colorOverLifetime.color.mode = ParticleGradientMode.Gradient; - - const gradient = colorOverLifetime.color.gradient; - gradient.alphaKeys[0].alpha = 0; - gradient.alphaKeys[1].alpha = 0; - gradient.addAlphaKey(0.2, 1.0); - gradient.addAlphaKey(0.8, 1.0); - - // Size over lifetime module - sizeOverLifetime.enabled = true; - const keys = sizeOverLifetime.size.curve.keys; - keys[0].value = 1; - keys[1].value = 0; - - // Velocity over lifetime module - velocityOverLifetime.enabled = true; - velocityOverLifetime.velocityX.constantMin = 2; - velocityOverLifetime.velocityX.constantMax = 1; - velocityOverLifetime.velocityX.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityY.constantMin = 4; - velocityOverLifetime.velocityY.constantMax = 2; - velocityOverLifetime.velocityY.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityZ.constantMin = 0; - velocityOverLifetime.velocityZ.constantMax = 0; - velocityOverLifetime.velocityZ.mode = ParticleCurveMode.TwoConstants; - - return particleEntity; -} - -function createGlowParticle(fireEntity: Entity, texture: Texture2D): void { - const particleEntity = fireEntity.createChild("Glow"); - particleEntity.transform.position.set(-1.88, 0, 0); - - const particleRenderer = particleEntity.addComponent(ParticleRenderer); - particleRenderer.renderMode = ParticleRenderMode.StretchBillboard; - particleRenderer.lengthScale = 2; - - const material = new ParticleMaterial(fireEntity.engine); - material.blendMode = BlendMode.Additive; - material.baseTexture = texture; - particleRenderer.setMaterial(material); - particleRenderer.priority = 1; - - const generator = particleRenderer.generator; - generator.useAutoRandomSeed = false; - const { main, emission, velocityOverLifetime, colorOverLifetime } = generator; - - // Main module - main.startSpeed.constant = 0.0; - - main.startSize.constantMin = 5; - main.startSize.constantMax = 9; - main.startSize.mode = ParticleCurveMode.TwoConstants; - - main.startRotationZ.constantMin = 0; - main.startRotationZ.constantMax = 360; - main.startRotationZ.mode = ParticleCurveMode.TwoConstants; - - main.startColor.constantMin = new Color(0 / 255, 157 / 255, 255 / 255, 64 / 255); - main.startColor.constantMax = new Color(13 / 255, 255 / 255, 0 / 255, 128 / 255); - main.startColor.mode = ParticleGradientMode.TwoConstants; - - // Emission module - emission.rateOverTime.constant = 10; - - const boxShape = new BoxShape(); - boxShape.size.set(22, 1, 0); - emission.shape = boxShape; - - // Velocity over lifetime module - velocityOverLifetime.enabled = true; - velocityOverLifetime.velocityX.constantMin = 2; - velocityOverLifetime.velocityX.constantMax = 1; - velocityOverLifetime.velocityX.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityY.constantMin = 4; - velocityOverLifetime.velocityY.constantMax = 2; - velocityOverLifetime.velocityY.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityZ.constantMin = 0; - velocityOverLifetime.velocityZ.constantMax = 0; - velocityOverLifetime.velocityZ.mode = ParticleCurveMode.TwoConstants; - - // Color over lifetime module - colorOverLifetime.enabled = true; - colorOverLifetime.color.mode = ParticleGradientMode.Gradient; - - const gradient = colorOverLifetime.color.gradient; - gradient.alphaKeys[0].alpha = 0; - gradient.alphaKeys[1].alpha = 0; - gradient.addAlphaKey(0.2, 1.0); -} - -function createSparksParticle(fireEntity: Entity, texture: Texture2D): void { - const particleEntity = fireEntity.createChild("Sparks"); - particleEntity.transform.position.set(-1.54, 0, 0); - - const particleRenderer = particleEntity.addComponent(ParticleRenderer); - const material = new ParticleMaterial(fireEntity.engine); - material.baseTexture = texture; - particleRenderer.setMaterial(material); - particleRenderer.priority = 0; - - const { main, emission, colorOverLifetime, velocityOverLifetime } = particleRenderer.generator; - particleRenderer.generator.useAutoRandomSeed = false; - - // Main module - main.startLifetime.constant = 5; - main.startSpeed.constant = 0; - - main.startSize.constantMin = 0.05; - main.startSize.constantMax = 0.2; - main.startSize.mode = ParticleCurveMode.TwoConstants; - - main.startRotationZ.constantMin = 0; - main.startRotationZ.constantMax = 360; - main.startRotationZ.mode = ParticleCurveMode.TwoConstants; - - main.startColor.constant = new Color(37 / 255, 133 / 255, 255 / 255, 255 / 255); - - // Emission module - emission.rateOverTime.constant = 30; - - const boxShape = new BoxShape(); - boxShape.size.set(22, 1, 0); - emission.shape = boxShape; - - // Velocity over lifetime module - velocityOverLifetime.enabled = true; - velocityOverLifetime.velocityX.constantMin = 2; - velocityOverLifetime.velocityX.constantMax = 1; - velocityOverLifetime.velocityX.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityY.constantMin = 4; - velocityOverLifetime.velocityY.constantMax = 2; - velocityOverLifetime.velocityY.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityZ.constantMin = 0; - velocityOverLifetime.velocityZ.constantMax = 0; - velocityOverLifetime.velocityZ.mode = ParticleCurveMode.TwoConstants; - - // Color over lifetime module - colorOverLifetime.enabled = true; - colorOverLifetime.color.mode = ParticleGradientMode.Gradient; - - const gradient = colorOverLifetime.color.gradient; - gradient.alphaKeys[0].alpha = 0; - gradient.alphaKeys[1].alpha = 0; - gradient.addAlphaKey(0.2, 1.0); - gradient.addAlphaKey(0.8, 1.0); -} - -function createHighlightsParticle(fireEntity: Entity, texture: Texture2D): void { - const particleEntity = fireEntity.createChild("Highlights"); - particleEntity.transform.position.set(-5.31, 0, 0); - - const particleRenderer = particleEntity.addComponent(ParticleRenderer); - - const material = new ParticleMaterial(fireEntity.engine); - material.blendMode = BlendMode.Additive; - material.baseTexture = texture; - particleRenderer.setMaterial(material); - particleRenderer.priority = 3; - - const generator = particleRenderer.generator; - const { main, emission, sizeOverLifetime, colorOverLifetime, velocityOverLifetime } = generator; - generator.useAutoRandomSeed = false; - - // Main module - main.startSpeed.constant = 0; - - main.startSize.constantMin = 0.1; - main.startSize.constantMax = 7; - main.startSize.mode = ParticleCurveMode.TwoConstants; - - main.startRotationZ.constantMin = 0; - main.startRotationZ.constantMax = 360; - main.startRotationZ.mode = ParticleCurveMode.TwoConstants; - - main.startColor.constantMin.set(105 / 255, 198 / 255, 255 / 255, 64 / 255); - main.startColor.constantMax.set(13 / 255, 255 / 255, 0 / 255, 32 / 255); - main.startColor.mode = ParticleGradientMode.TwoConstants; - - // Emission module - emission.rateOverTime.constant = 40; - - const boxShape = new BoxShape(); - boxShape.size.set(22, 1, 0); - emission.shape = boxShape; - - // Velocity over lifetime module - velocityOverLifetime.enabled = true; - velocityOverLifetime.velocityX.constantMin = 3; - velocityOverLifetime.velocityX.constantMax = 2; - velocityOverLifetime.velocityX.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityY.constantMin = 4; - velocityOverLifetime.velocityY.constantMax = 2; - velocityOverLifetime.velocityY.mode = ParticleCurveMode.TwoConstants; - - velocityOverLifetime.velocityZ.constantMin = 0; - velocityOverLifetime.velocityZ.constantMax = 0; - velocityOverLifetime.velocityZ.mode = ParticleCurveMode.TwoConstants; - - // Color over lifetime module - colorOverLifetime.enabled = true; - colorOverLifetime.color.mode = ParticleGradientMode.Gradient; - - const gradient = colorOverLifetime.color.gradient; - gradient.alphaKeys[0].alpha = 0; - gradient.alphaKeys[1].alpha = 0; - gradient.addAlphaKey(0.2, 1.0); - gradient.addAlphaKey(0.8, 1.0); - - // Size over lifetime module - sizeOverLifetime.enabled = true; - const curve = sizeOverLifetime.size.curve; - sizeOverLifetime.size.mode = ParticleCurveMode.Curve; - curve.keys[0].value = 1; - curve.keys[1].value = 0; -} diff --git a/e2e/config.ts b/e2e/config.ts index 4b1f105a8..f0ce5ec80 100644 --- a/e2e/config.ts +++ b/e2e/config.ts @@ -163,12 +163,5 @@ export const E2E_CONFIG = { caseFileName: "physx-collision", threshold: 0.1 } - }, - Particle: { - meshopt: { - category: "Particle", - caseFileName: "particleRenderer-dream", - threshold: 0.3 - } } }; diff --git a/e2e/fixtures/originImage/Particle_particleRenderer-dream.jpg b/e2e/fixtures/originImage/Particle_particleRenderer-dream.jpg deleted file mode 100644 index ca9bcf21c119cf1a22968552e9acb115778795e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 372576 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 - private static readonly _particleIncreaseCount = 128; - private static readonly _transformedBoundsIncreaseCount = 16; /** Use auto random seed. */ useAutoRandomSeed = true; /** Main module. */ @deepClone - readonly main: MainModule; + readonly main = new MainModule(this); /** Emission module. */ @deepClone readonly emission = new EmissionModule(this); /** Velocity over lifetime module. */ @deepClone - readonly velocityOverLifetime: VelocityOverLifetimeModule; + readonly velocityOverLifetime = new VelocityOverLifetimeModule(this); /** Size over lifetime module. */ @deepClone - readonly sizeOverLifetime: SizeOverLifetimeModule; + readonly sizeOverLifetime = new SizeOverLifetimeModule(this); /** Rotation over lifetime module. */ @deepClone readonly rotationOverLifetime = new RotationOverLifetimeModule(this); @@ -113,14 +109,6 @@ export class ParticleGenerator { @ignoreClone private _instanceVertices: Float32Array; private _randomSeed = 0; - @ignoreClone - private _transformedBoundsArray: Float32Array; - @ignoreClone - private _transformedBoundsCount = 0; - @ignoreClone - private _firstActiveTransformedBoundingBox = 0; - @ignoreClone - private _firstFreeTransformedBoundingBox = 0; /** * Whether the particle generator is contain alive or is still creating particles. @@ -161,10 +149,6 @@ export class ParticleGenerator { this._reorganizeGeometryBuffers(); this._resizeInstanceBuffer(true, ParticleGenerator._particleIncreaseCount); - this.main = new MainModule(this); - this.velocityOverLifetime = new VelocityOverLifetimeModule(this); - this.sizeOverLifetime = new SizeOverLifetimeModule(this); - this.emission.enabled = true; } @@ -215,8 +199,6 @@ export class ParticleGenerator { this._firstNewElement = firstFreeElement; this._playTime = 0; - this._firstActiveTransformedBoundingBox = this._firstFreeTransformedBoundingBox; - this.emission._reset(); } } @@ -262,7 +244,6 @@ export class ParticleGenerator { * @internal */ _update(elapsedTime: number): void { - const lastAlive = this.isAlive; const { main, emission } = this; const duration = main.duration; const lastPlayTime = this._playTime; @@ -272,10 +253,6 @@ export class ParticleGenerator { this._retireActiveParticles(); this._freeRetiredParticles(); - if (main.simulationSpace === ParticleSimulationSpace.World) { - this._retireTransformedBounds(); - } - if (emission.enabled && this._isPlaying) { // If maxParticles is changed dynamically, currentParticleCount may be greater than maxParticles if (this._currentParticleCount > main._maxParticleBuffer) { @@ -284,27 +261,21 @@ export class ParticleGenerator { this._resizeInstanceBuffer(false); } } + emission._emit(lastPlayTime, this._playTime); + if (!main.isLoop && this._playTime > duration) { this._isPlaying = false; } } - if (this.isAlive) { - if (main.simulationSpace === ParticleSimulationSpace.World) { - this._generateTransformedBounds(); - } - } else { - // Reset play time when is not playing and no active particles to avoid potential precision problems in GPU + // Reset play time when is not playing and no active particles to avoid potential precision problems in GPU + if (!this.isAlive) { const discardTime = Math.min(emission._frameRateTime, Math.floor(this._playTime / duration) * duration); this._playTime -= discardTime; emission._frameRateTime -= discardTime; } - if (this.isAlive !== lastAlive) { - this._renderer._onWorldVolumeChanged(); - } - // Add new particles to vertex buffer when has wait process retired element or new particle // // Another choice is just add new particles to vertex buffer and render all particles ignore the retired particle in shader, especially billboards @@ -371,7 +342,7 @@ export class ParticleGenerator { primitive.addVertexElement(particleUtils.billboardVertexElement); vertexBufferBindings.push(particleUtils.billboardVertexBufferBinding); primitive.setIndexBufferBinding(particleUtils.billboardIndexBufferBinding); - this._subPrimitive.count = ParticleBufferUtils.billboardIndexCount; + this._subPrimitive.count = particleUtils.billboardIndexCount; } primitive.setVertexBufferBindings(vertexBufferBindings); @@ -391,7 +362,8 @@ export class ParticleGenerator { _resizeInstanceBuffer(isIncrease: boolean, increaseCount?: number): void { this._instanceVertexBufferBinding?.buffer.destroy(); - const stride = ParticleBufferUtils.instanceVertexStride; + const particleUtils = this._renderer.engine._particleBufferUtils; + const stride = particleUtils.instanceVertexStride; const newParticleCount = isIncrease ? this._currentParticleCount + increaseCount : this.main._maxParticleBuffer; const newByteLength = stride * newParticleCount; const engine = this._renderer.engine; @@ -408,22 +380,17 @@ export class ParticleGenerator { const vertexBufferBinding = new VertexBufferBinding(vertexInstanceBuffer, stride); const instanceVertices = new Float32Array(newByteLength / 4); - const lastInstanceVertices = this._instanceVertices; if (lastInstanceVertices) { - const floatStride = ParticleBufferUtils.instanceVertexFloatStride; + const floatStride = particleUtils.instanceVertexFloatStride; const firstFreeElement = this._firstFreeElement; const firstRetiredElement = this._firstRetiredElement; if (isIncrease) { - instanceVertices.set(new Float32Array(lastInstanceVertices.buffer, 0, firstFreeElement * floatStride)); - - const nextFreeElement = firstFreeElement + 1; - const freeEndOffset = (nextFreeElement + increaseCount) * floatStride; - instanceVertices.set( - new Float32Array(lastInstanceVertices.buffer, nextFreeElement * floatStride * 4), - freeEndOffset - ); + const freeOffset = this._firstFreeElement * floatStride; + instanceVertices.set(new Float32Array(lastInstanceVertices.buffer, 0, freeOffset)); + const freeEndOffset = (this._firstFreeElement + increaseCount) * floatStride; + instanceVertices.set(new Float32Array(lastInstanceVertices.buffer, freeOffset * 4), freeEndOffset); // Maintain expanded pointers this._firstNewElement > firstFreeElement && (this._firstNewElement += increaseCount); @@ -534,122 +501,6 @@ export class ParticleGenerator { _destroy(): void { this._instanceVertexBufferBinding.buffer.destroy(); this._primitive.destroy(); - this.emission._destroy(); - } - - /** - * @internal - */ - _updateBoundsSimulationLocal(bounds: BoundingBox): void { - const renderer = this._renderer; - // Get longest Lifetime - const maxLifetime = this.main.startLifetime._getMax(); - - const { _generatorBounds: generatorBounds, _transformedBounds: transformedBounds } = renderer; - if (renderer._isContainDirtyFlag(ParticleUpdateFlags.GeneratorVolume)) { - this._calculateGeneratorBounds(maxLifetime, generatorBounds); - renderer._setDirtyFlagFalse(ParticleUpdateFlags.GeneratorVolume); - } - - if (renderer._isContainDirtyFlag(ParticleUpdateFlags.TransformVolume)) { - this._calculateTransformedBounds(maxLifetime, generatorBounds, transformedBounds); - renderer._setDirtyFlagFalse(ParticleUpdateFlags.TransformVolume); - } - - this._addGravityToBounds(maxLifetime, transformedBounds, bounds); - } - - /** - * @internal - */ - _updateBoundsSimulationWorld(bounds: BoundingBox): void { - const boundsArray = this._transformedBoundsArray; - const firstActiveElement = this._firstActiveTransformedBoundingBox; - const firstFreeElement = this._firstFreeTransformedBoundingBox; - - const index = firstActiveElement * ParticleBufferUtils.boundsFloatStride; - bounds.min.copyFromArray(boundsArray, index); - bounds.max.copyFromArray(boundsArray, index + 3); - - if (firstActiveElement < firstFreeElement) { - for (let i = firstActiveElement + 1; i < firstFreeElement; i++) { - this._mergeTransformedBounds(i, bounds); - } - } else { - for (let i = firstActiveElement + 1, n = this._transformedBoundsCount; i < n; i++) { - this._mergeTransformedBounds(i, bounds); - } - if (firstFreeElement > 0) { - for (let i = 0; i < firstFreeElement; i++) { - this._mergeTransformedBounds(i, bounds); - } - } - } - - const maxLifetime = this.main.startLifetime._getMax(); - this._addGravityToBounds(maxLifetime, bounds, bounds); - } - - /** - * @internal - */ - _freeBoundsArray(): void { - this._transformedBoundsArray = null; - - this._transformedBoundsCount = 0; - this._firstActiveTransformedBoundingBox = 0; - this._firstFreeTransformedBoundingBox = 0; - } - - /** - * @internal - */ - _generateTransformedBounds(): void { - const renderer = this._renderer; - // Get longest Lifetime - const maxLifetime = this.main.startLifetime._getMax(); - - const generatorBounds = renderer._generatorBounds; - if (renderer._isContainDirtyFlag(ParticleUpdateFlags.GeneratorVolume)) { - this._calculateGeneratorBounds(maxLifetime, generatorBounds); - renderer._setDirtyFlagFalse(ParticleUpdateFlags.GeneratorVolume); - } - - const { boundsFloatStride, boundsTimeOffset, boundsMaxLifetimeOffset } = ParticleBufferUtils; - const firstFreeElement = this._firstFreeTransformedBoundingBox; - if (renderer._isContainDirtyFlag(ParticleUpdateFlags.TransformVolume)) { - // Resize transformed bounds if needed - let nextFreeElement = firstFreeElement + 1; - if (nextFreeElement >= this._transformedBoundsCount) { - nextFreeElement = 0; - } - if (nextFreeElement === this._firstActiveTransformedBoundingBox) { - this._resizeTransformedBoundsArray(); - nextFreeElement = firstFreeElement + 1; - } - - // Generate transformed bounds - const transformedBounds = renderer._transformedBounds; - this._calculateTransformedBounds(maxLifetime, generatorBounds, transformedBounds); - - const boundsOffset = firstFreeElement * boundsFloatStride; - const boundsArray = this._transformedBoundsArray; - transformedBounds.min.copyToArray(boundsArray, boundsOffset); - transformedBounds.max.copyToArray(boundsArray, boundsOffset + 3); - - boundsArray[boundsOffset + boundsTimeOffset] = this._playTime; - boundsArray[boundsOffset + boundsMaxLifetimeOffset] = maxLifetime; - - this._firstFreeTransformedBoundingBox = nextFreeElement; - renderer._setDirtyFlagFalse(ParticleUpdateFlags.TransformVolume); - } else { - let previousFreeElement = this._firstFreeTransformedBoundingBox - 1; - if (previousFreeElement < 0) { - previousFreeElement = this._transformedBoundsCount; - } - this._transformedBoundsArray[previousFreeElement * ParticleBufferUtils.boundsFloatStride + boundsTimeOffset] = - this._playTime; - } } private _addNewParticle(position: Vector3, direction: Vector3, transform: Transform, time: number): void { @@ -661,12 +512,6 @@ export class ParticleGenerator { const main = this.main; // Check if can be expanded - - // Using 'nextFreeElement' instead of 'freeElement' when comparing with '_firstRetiredElement' - // aids in definitively identifying the head and tail of the circular queue. - - // Failure to adopt this approach may impede growth initiation - // due to the initial alignment of 'freeElement' and 'firstRetiredElement'. if (nextFreeElement === this._firstRetiredElement) { const increaseCount = Math.min( ParticleGenerator._particleIncreaseCount, @@ -688,10 +533,11 @@ export class ParticleGenerator { rot = transform.worldRotationQuaternion; } + const particleUtils = this._renderer.engine._particleBufferUtils; const startSpeed = main.startSpeed.evaluate(undefined, main._startSpeedRand.random()); const instanceVertices = this._instanceVertices; - const offset = firstFreeElement * ParticleBufferUtils.instanceVertexFloatStride; + const offset = firstFreeElement * particleUtils.instanceVertexFloatStride; // Position instanceVertices[offset] = position.x; @@ -699,7 +545,7 @@ export class ParticleGenerator { instanceVertices[offset + 2] = position.z; // Start life time - instanceVertices[offset + ParticleBufferUtils.startLifeTimeOffset] = main.startLifetime.evaluate( + instanceVertices[offset + particleUtils.startLifeTimeOffset] = main.startLifetime.evaluate( undefined, main._startLifeTimeRand.random() ); @@ -710,7 +556,7 @@ export class ParticleGenerator { instanceVertices[offset + 6] = direction.z; // Time - instanceVertices[offset + ParticleBufferUtils.timeOffset] = time; + instanceVertices[offset + particleUtils.timeOffset] = time; // Color const startColor = ParticleGenerator._tempColor0; @@ -808,12 +654,12 @@ export class ParticleGenerator { // Simulation UV if (this.textureSheetAnimation.enabled) { const tillingInfo = this.textureSheetAnimation._tillingInfo; - instanceVertices[offset + ParticleBufferUtils.simulationUVOffset] = tillingInfo.x; + instanceVertices[offset + particleUtils.simulationUVOffset] = tillingInfo.x; instanceVertices[offset + 35] = tillingInfo.y; instanceVertices[offset + 36] = 0; instanceVertices[offset + 37] = 0; } else { - instanceVertices[offset + ParticleBufferUtils.simulationUVOffset] = 1; + instanceVertices[offset + particleUtils.simulationUVOffset] = 1; instanceVertices[offset + 35] = 1; instanceVertices[offset + 36] = 0; instanceVertices[offset + 37] = 0; @@ -824,17 +670,18 @@ export class ParticleGenerator { private _retireActiveParticles(): void { const engine = this._renderer.engine; + const particleUtils = engine._particleBufferUtils; const frameCount = engine.time.frameCount; const instanceVertices = this._instanceVertices; while (this._firstActiveElement !== this._firstNewElement) { - const activeParticleOffset = this._firstActiveElement * ParticleBufferUtils.instanceVertexFloatStride; - const activeParticleTimeOffset = activeParticleOffset + ParticleBufferUtils.timeOffset; + const activeParticleOffset = this._firstActiveElement * particleUtils.instanceVertexFloatStride; + const activeParticleTimeOffset = activeParticleOffset + particleUtils.timeOffset; const particleAge = this._playTime - instanceVertices[activeParticleTimeOffset]; // Use `Math.fround` to ensure the precision of comparison is same - if (Math.fround(particleAge) < instanceVertices[activeParticleOffset + ParticleBufferUtils.startLifeTimeOffset]) { + if (Math.fround(particleAge) < instanceVertices[activeParticleOffset + particleUtils.startLifeTimeOffset]) { break; } @@ -850,12 +697,12 @@ export class ParticleGenerator { } private _freeRetiredParticles(): void { + const particleUtils = this._renderer.engine._particleBufferUtils; const frameCount = this._renderer.engine.time.frameCount; while (this._firstRetiredElement !== this._firstActiveElement) { const offset = - this._firstRetiredElement * ParticleBufferUtils.instanceVertexFloatStride + - ParticleBufferUtils.startLifeTimeOffset; + this._firstRetiredElement * particleUtils.instanceVertexFloatStride + particleUtils.startLifeTimeOffset; const age = frameCount - this._instanceVertices[offset]; // WebGL don't support map buffer range, so off this optimization @@ -878,7 +725,7 @@ export class ParticleGenerator { return; } - const byteStride = ParticleBufferUtils.instanceVertexStride; + const byteStride = this._renderer.engine._particleBufferUtils.instanceVertexStride; const start = firstActiveElement * byteStride; const instanceBuffer = this._instanceVertexBufferBinding.buffer; const dataBuffer = this._instanceVertices.buffer; @@ -917,234 +764,4 @@ export class ParticleGenerator { out.push(vertexBufferBinding); return index; } - - private _resizeTransformedBoundsArray(): void { - const floatStride = ParticleBufferUtils.boundsFloatStride; - const increaseCount = ParticleGenerator._transformedBoundsIncreaseCount; - - this._transformedBoundsCount += increaseCount; - const lastBoundsArray = this._transformedBoundsArray; - const boundsArray = new Float32Array(this._transformedBoundsCount * floatStride); - - if (lastBoundsArray) { - const firstFreeElement = this._firstFreeTransformedBoundingBox; - boundsArray.set(new Float32Array(lastBoundsArray.buffer, 0, firstFreeElement * floatStride)); - - const nextFreeElement = firstFreeElement + 1; - const freeEndOffset = (nextFreeElement + increaseCount) * floatStride; - boundsArray.set(new Float32Array(lastBoundsArray.buffer, nextFreeElement * floatStride * 4), freeEndOffset); - - const firstActiveElement = this._firstActiveTransformedBoundingBox; - if (firstActiveElement > firstFreeElement) { - this._firstActiveTransformedBoundingBox += increaseCount; - } - } - - this._transformedBoundsArray = boundsArray; - } - - private _retireTransformedBounds(): void { - const { boundsFloatStride, boundsTimeOffset, boundsMaxLifetimeOffset } = ParticleBufferUtils; - const boundsArray = this._transformedBoundsArray; - const firstFreeElement = this._firstFreeTransformedBoundingBox; - const count = this._transformedBoundsCount; - - while (this._firstActiveTransformedBoundingBox !== firstFreeElement) { - const index = this._firstActiveTransformedBoundingBox * boundsFloatStride; - const age = this._playTime - boundsArray[index + boundsTimeOffset]; - if (age <= boundsArray[index + boundsMaxLifetimeOffset]) { - break; - } - - if (++this._firstActiveTransformedBoundingBox >= count) { - this._firstActiveTransformedBoundingBox = 0; - } - this._renderer._onWorldVolumeChanged(); - } - } - - private _calculateGeneratorBounds(maxLifetime: number, bounds: BoundingBox): void { - const { _tempVector30: directionMax, _tempVector31: directionMin, _tempVector20: speedMinMax } = ParticleGenerator; - const { min, max } = bounds; - const { main } = this; - - // StartSpeed's impact - const { shape } = this.emission; - if (shape?.enabled) { - shape._getPositionRange(min, max); - shape._getDirectionRange(directionMin, directionMax); - } else { - min.set(0, 0, 0); - max.set(0, 0, 0); - directionMin.set(0, 0, -1); - directionMax.set(0, 0, 0); - } - this._getExtremeValueFromZero(main.startSpeed, speedMinMax); - - const { x: speedMin, y: speedMax } = speedMinMax; - const { x: dirMinX, y: dirMinY, z: dirMinZ } = directionMin; - const { x: dirMaxX, y: dirMaxY, z: dirMaxZ } = directionMax; - - min.set( - min.x + Math.min(dirMinX * speedMax, dirMaxX * speedMin) * maxLifetime, - min.y + Math.min(dirMinY * speedMax, dirMaxY * speedMin) * maxLifetime, - min.z + Math.min(dirMinZ * speedMax, dirMaxZ * speedMin) * maxLifetime - ); - - max.set( - max.x + Math.max(dirMinX * speedMin, dirMaxX * speedMax) * maxLifetime, - max.y + Math.max(dirMinY * speedMin, dirMaxY * speedMax) * maxLifetime, - max.z + Math.max(dirMinZ * speedMin, dirMaxZ * speedMax) * maxLifetime - ); - - // StartSize's impact - let maxSize = main.startSize._getMax(); - - if (main.startSize3D) { - const startSizeYMax = main.startSizeY._getMax(); - if ( - this._renderer.renderMode === ParticleRenderMode.Billboard || - ParticleRenderMode.StretchBillboard || - ParticleRenderMode.HorizontalBillboard - ) { - maxSize = Math.max(maxSize, startSizeYMax); - } else { - const startSizeZMax = main.startSizeZ._getMax(); - maxSize = Math.max(maxSize, startSizeYMax, startSizeZMax); - } - } - - // Use diagonal for potential rotation - maxSize *= 1.414; - - // SizeOverLifetime impact - const { sizeOverLifetime } = this; - if (sizeOverLifetime.enabled) { - let maxSizeOverLifetime = sizeOverLifetime.size._getMax(); - if (sizeOverLifetime.separateAxes) { - const maxSizeOverLifetimeY = sizeOverLifetime.sizeY._getMax(); - const maxSizeOverLifetimeZ = sizeOverLifetime.sizeZ._getMax(); - maxSizeOverLifetime = Math.max(maxSizeOverLifetime, maxSizeOverLifetimeY, maxSizeOverLifetimeZ); - } - - maxSize *= maxSizeOverLifetime; - } - - min.set(min.x - maxSize, min.y - maxSize, min.z - maxSize); - max.set(max.x + maxSize, max.y + maxSize, max.z + maxSize); - } - - private _mergeTransformedBounds(index: number, bounds: BoundingBox): void { - const { min, max } = bounds; - const boundsArray = this._transformedBoundsArray; - - const offset = index * ParticleBufferUtils.boundsFloatStride; - - min.set( - Math.min(min.x, boundsArray[offset]), - Math.min(min.y, boundsArray[offset + 1]), - Math.min(min.z, boundsArray[offset + 2]) - ); - - max.set( - Math.max(max.x, boundsArray[offset + 3]), - Math.max(max.y, boundsArray[offset + 4]), - Math.max(max.z, boundsArray[offset + 5]) - ); - } - - private _calculateTransformedBounds(maxLifetime: number, origin: BoundingBox, out: BoundingBox): void { - const { - _tempVector20: velMinMaxX, - _tempVector21: velMinMaxY, - _tempVector22: velMinMaxZ, - _tempMat: rotateMat - } = ParticleGenerator; - const { transform } = this._renderer.entity; - const worldPosition = transform.worldPosition; - Matrix.rotationQuaternion(transform.worldRotationQuaternion, rotateMat); - - const { min: originMin, max: originMax } = origin; - const { min, max } = out; - - const { velocityOverLifetime } = this; - if (velocityOverLifetime.enabled) { - this._getExtremeValueFromZero(velocityOverLifetime.velocityX, velMinMaxX); - this._getExtremeValueFromZero(velocityOverLifetime.velocityY, velMinMaxY); - this._getExtremeValueFromZero(velocityOverLifetime.velocityZ, velMinMaxZ); - - if (velocityOverLifetime.space === ParticleSimulationSpace.Local) { - min.set( - originMin.x + velMinMaxX.x * maxLifetime, - originMin.y + velMinMaxY.x * maxLifetime, - originMin.z + velMinMaxZ.x * maxLifetime - ); - max.set( - originMax.x + velMinMaxX.y * maxLifetime, - originMax.y + velMinMaxY.y * maxLifetime, - originMax.z + velMinMaxZ.y * maxLifetime - ); - - out.transform(rotateMat); - } else { - out.transform(rotateMat); - - min.set( - originMin.x + velMinMaxX.x * maxLifetime, - originMin.y + velMinMaxY.x * maxLifetime, - originMin.z + velMinMaxZ.x * maxLifetime - ); - max.set( - originMax.x + velMinMaxX.y * maxLifetime, - originMax.y + velMinMaxY.y * maxLifetime, - originMax.z + velMinMaxZ.y * maxLifetime - ); - } - } else { - BoundingBox.transform(origin, rotateMat, out); - } - - min.add(worldPosition); - max.add(worldPosition); - } - - private _addGravityToBounds(maxLifetime: number, origin: BoundingBox, out: BoundingBox): void { - const { min: originMin, max: originMax } = origin; - const modifierMinMax = ParticleGenerator._tempVector20; - - // Gravity modifier impact - this._getExtremeValueFromZero(this.main.gravityModifier, modifierMinMax); - const { x, y, z } = this._renderer.scene.physics.gravity; - - const coefficient = 0.5 * maxLifetime * maxLifetime; - const minGravityEffect = modifierMinMax.x * coefficient; - const maxGravityEffect = modifierMinMax.y * coefficient; - - const gravityEffectMinX = x * minGravityEffect; - const gravityEffectMaxX = x * maxGravityEffect; - - const gravityEffectMinY = y * minGravityEffect; - const gravityEffectMaxY = y * maxGravityEffect; - - const gravityEffectMinZ = z * minGravityEffect; - const gravityEffectMaxZ = z * maxGravityEffect; - - out.min.set( - Math.min(gravityEffectMinX, gravityEffectMaxX) + originMin.x, - Math.min(gravityEffectMinY, gravityEffectMaxY) + originMin.y, - Math.min(gravityEffectMinZ, gravityEffectMaxZ) + originMin.z - ); - - out.max.set( - Math.max(gravityEffectMinX, gravityEffectMaxX) + originMax.x, - Math.max(gravityEffectMinY, gravityEffectMaxY) + originMax.y, - Math.max(gravityEffectMinZ, gravityEffectMaxZ) + originMax.z - ); - } - - private _getExtremeValueFromZero(curve: ParticleCompositeCurve, out: Vector2): void { - curve._getMinMax(out); - out.x = Math.min(0, out.x); - out.y = Math.max(0, out.y); - } } diff --git a/packages/core/src/particle/ParticleRenderer.ts b/packages/core/src/particle/ParticleRenderer.ts index 3bab170ac..ba3971a54 100644 --- a/packages/core/src/particle/ParticleRenderer.ts +++ b/packages/core/src/particle/ParticleRenderer.ts @@ -1,17 +1,15 @@ -import { Vector3, BoundingBox } from "@galacean/engine-math"; +import { BoundingBox, Vector3 } from "@galacean/engine-math"; import { Entity } from "../Entity"; import { RenderContext } from "../RenderPipeline/RenderContext"; import { Renderer, RendererUpdateFlags } from "../Renderer"; import { GLCapabilityType } from "../base/Constant"; -import { deepClone, ignoreClone, shallowClone } from "../clone/CloneManager"; +import { deepClone, shallowClone } from "../clone/CloneManager"; import { ModelMesh } from "../mesh/ModelMesh"; import { ShaderMacro } from "../shader/ShaderMacro"; import { ShaderProperty } from "../shader/ShaderProperty"; +import { ParticleGenerator } from "./ParticleGenerator"; import { ParticleRenderMode } from "./enums/ParticleRenderMode"; import { ParticleStopMode } from "./enums/ParticleStopMode"; -import { ParticleGenerator } from "./ParticleGenerator"; -import { ParticleSimulationSpace } from "./enums/ParticleSimulationSpace"; -import { TransformModifyFlags } from "../Transform"; /** * Particle Renderer Component. @@ -30,7 +28,7 @@ export class ParticleRenderer extends Renderer { /** Particle generator. */ @deepClone - readonly generator: ParticleGenerator; + readonly generator = new ParticleGenerator(this); /** Specifies how much particles stretch depending on their velocity. */ velocityScale = 0; /** How much are the particles stretched in their direction of motion, defined as the length of the particle compared to its width. */ @@ -39,13 +37,6 @@ export class ParticleRenderer extends Renderer { @shallowClone pivot = new Vector3(); - /** @internal */ - @ignoreClone - _generatorBounds = new BoundingBox(); - /** @internal */ - @ignoreClone - _transformedBounds = new BoundingBox(); - private _renderMode: ParticleRenderMode; private _currentRenderModeMacro: ShaderMacro; private _mesh: ModelMesh; @@ -124,15 +115,12 @@ export class ParticleRenderer extends Renderer { */ constructor(entity: Entity) { super(entity); - this._onGeneratorParamsChanged = this._onGeneratorParamsChanged.bind(this); - this.generator = new ParticleGenerator(this); this._currentRenderModeMacro = ParticleRenderer._billboardModeMacro; this.shaderData.enableMacro(ParticleRenderer._billboardModeMacro); this._supportInstancedArrays = this.engine._hardwareRenderer.canIUse(GLCapabilityType.instancedArrays); - - this._onGeneratorParamsChanged(); + this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume; } /** @@ -174,26 +162,8 @@ export class ParticleRenderer extends Renderer { * @internal */ protected override _updateBounds(worldBounds: BoundingBox): void { - const { generator } = this; - - // Using `isAlive` instead of `firstActiveElement !== firstFreeElement` - // Because `firstActiveElement !== firstFreeElement` will cause bounds is merely a point, and cannot be culled forever - // Must generate bounds even when there is no particle but in play state - if (!generator.isAlive) { - const worldPosition = this.entity.transform.worldPosition; - worldBounds.min.copyFrom(worldPosition); - worldBounds.max.copyFrom(worldPosition); - return; - } - if (generator.main.simulationSpace === ParticleSimulationSpace.Local) { - generator._updateBoundsSimulationLocal(worldBounds); - } else { - if (this._isContainDirtyFlag(ParticleUpdateFlags.TransformVolume)) { - generator._generateTransformedBounds(); - this._setDirtyFlagFalse(ParticleUpdateFlags.TransformVolume); - } - generator._updateBoundsSimulationWorld(worldBounds); - } + worldBounds.min.set(-Number.MAX_VALUE, -Number.MAX_VALUE, -Number.MAX_VALUE); + worldBounds.max.set(Number.MAX_VALUE, Number.MAX_VALUE, Number.MAX_VALUE); } /** @@ -235,51 +205,4 @@ export class ParticleRenderer extends Renderer { } this.generator._destroy(); } - - /** - * @internal - */ - _isContainDirtyFlag(type: number): boolean { - return (this._dirtyUpdateFlag & type) != 0; - } - - /** - * @internal - */ - _setDirtyFlagFalse(type: number): void { - this._dirtyUpdateFlag &= ~type; - } - - /** - * @internal - */ - _onWorldVolumeChanged(): void { - this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume; - } - - /** - * @internal - */ - @ignoreClone - _onGeneratorParamsChanged(): void { - this._dirtyUpdateFlag |= - ParticleUpdateFlags.GeneratorVolume | ParticleUpdateFlags.TransformVolume | RendererUpdateFlags.WorldVolume; - } - - /** - * @internal - */ - override _onTransformChanged(type: TransformModifyFlags): void { - this._dirtyUpdateFlag |= ParticleUpdateFlags.TransformVolume | RendererUpdateFlags.WorldVolume; - } -} - -/** - * @internal - */ -export enum ParticleUpdateFlags { - /** On World Transform Changed */ - TransformVolume = 0x2, - /** On Generator Bounds Related Params Changed */ - GeneratorVolume = 0x4 } diff --git a/packages/core/src/particle/modules/EmissionModule.ts b/packages/core/src/particle/modules/EmissionModule.ts index d90722b08..559052709 100644 --- a/packages/core/src/particle/modules/EmissionModule.ts +++ b/packages/core/src/particle/modules/EmissionModule.ts @@ -16,9 +16,10 @@ export class EmissionModule extends ParticleGeneratorModule { /** The rate at which the emitter spawns new particles over distance. */ @deepClone rateOverDistance: ParticleCompositeCurve = new ParticleCompositeCurve(0); - + /** The shape of the emitter. */ @deepClone - _shape: BaseShape; + shape: BaseShape; + /** @internal */ @ignoreClone _shapeRand = new Rand(0, ParticleRandomSubSeeds.Shape); @@ -33,26 +34,6 @@ export class EmissionModule extends ParticleGeneratorModule { @ignoreClone private _burstRand: Rand = new Rand(0, ParticleRandomSubSeeds.Burst); - /** - * The shape of the emitter. - */ - get shape() { - return this._shape; - } - - set shape(value: BaseShape) { - const lastShape = this._shape; - if (value !== lastShape) { - this._shape = value; - - const renderer = this._generator._renderer; - lastShape?._unRegisterOnValueChanged(renderer._onGeneratorParamsChanged); - value?._registerOnValueChanged(renderer._onGeneratorParamsChanged); - - renderer._onGeneratorParamsChanged(); - } - } - /** * Gets the burst array. */ @@ -121,13 +102,6 @@ export class EmissionModule extends ParticleGeneratorModule { this._currentBurstIndex = 0; } - /** - * @internal - */ - _destroy(): void { - this._shape?._unRegisterOnValueChanged(this._generator._renderer._onGeneratorParamsChanged); - } - private _emitByRateOverTime(playTime: number): void { const ratePerSeconds = this.rateOverTime.evaluate(undefined, undefined); if (ratePerSeconds > 0) { diff --git a/packages/core/src/particle/modules/MainModule.ts b/packages/core/src/particle/modules/MainModule.ts index 0349aec31..65a69019d 100644 --- a/packages/core/src/particle/modules/MainModule.ts +++ b/packages/core/src/particle/modules/MainModule.ts @@ -9,7 +9,6 @@ import { ParticleScaleMode } from "../enums/ParticleScaleMode"; import { ParticleSimulationSpace } from "../enums/ParticleSimulationSpace"; import { ParticleCompositeCurve } from "./ParticleCompositeCurve"; import { ParticleCompositeGradient } from "./ParticleCompositeGradient"; -import { TransformModifyFlags } from "../../Transform"; export class MainModule implements ICustomClone { private static _tempVector40 = new Vector4(); @@ -32,6 +31,24 @@ export class MainModule implements ICustomClone { /** Start delay in seconds. */ @deepClone startDelay = new ParticleCompositeCurve(0); + /** The initial lifetime of particles when emitted. */ + @deepClone + startLifetime = new ParticleCompositeCurve(5); + /** The initial speed of particles when the Particle Generator first spawns them. */ + @deepClone + startSpeed = new ParticleCompositeCurve(5); + + /** A flag to enable specifying particle size individually for each axis. */ + startSize3D = false; + /** The initial size of particles along the x-axis when the Particle Generator first spawns them. */ + @deepClone + startSizeX = new ParticleCompositeCurve(1); + /** The initial size of particles along the y-axis when the Particle Generator first spawns them. */ + @deepClone + startSizeY = new ParticleCompositeCurve(1); + /** The initial size of particles along the z-axis when the Particle Generator first spawns them. */ + @deepClone + startSizeZ = new ParticleCompositeCurve(1); /** A flag to enable 3D particle rotation, when disabled, only `startRotationZ` is used. */ startRotation3D = false; @@ -51,6 +68,10 @@ export class MainModule implements ICustomClone { @deepClone startColor = new ParticleCompositeGradient(new Color(1, 1, 1, 1)); /** A scale that this Particle Generator applies to gravity, defined by Physics.gravity. */ + @deepClone + gravityModifier = new ParticleCompositeCurve(0); + /** This selects the space in which to simulate particles. It can be either world or local space. */ + simulationSpace = ParticleSimulationSpace.Local; /** Override the default playback speed of the Particle Generator. */ simulationSpeed = 1.0; /** Control how the Particle Generator applies its Transform component to the particles it emits. */ @@ -80,149 +101,11 @@ export class MainModule implements ICustomClone { @ignoreClone readonly _gravityModifierRand = new Rand(0, ParticleRandomSubSeeds.GravityModifier); - @deepClone - private _startLifetime: ParticleCompositeCurve; - @deepClone - private _startSpeed: ParticleCompositeCurve; - private _startSize3D = false; - @deepClone - private _startSizeX: ParticleCompositeCurve; - @deepClone - private _startSizeY: ParticleCompositeCurve; - @deepClone - private _startSizeZ: ParticleCompositeCurve; - @deepClone - private _gravityModifier: ParticleCompositeCurve; - private _simulationSpace = ParticleSimulationSpace.Local; @ignoreClone private _generator: ParticleGenerator; @ignoreClone private _gravity = new Vector3(); - /** - * The initial lifetime of particles when emitted. - */ - get startLifetime(): ParticleCompositeCurve { - return this._startLifetime; - } - - set startLifetime(value: ParticleCompositeCurve) { - const lastValue = this._startLifetime; - if (value !== lastValue) { - this._startLifetime = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * The initial speed of particles when the Particle Generator first spawns them. - */ - get startSpeed(): ParticleCompositeCurve { - return this._startSpeed; - } - - set startSpeed(value: ParticleCompositeCurve) { - const lastValue = this._startSpeed; - if (value !== lastValue) { - this._startSpeed = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * A flag to enable specifying particle size individually for each axis. - */ - get startSize3D(): boolean { - return this._startSize3D; - } - - set startSize3D(value: boolean) { - if (value !== this._startSize3D) { - this._startSize3D = value; - this._generator._renderer._onGeneratorParamsChanged(); - } - } - - /** - * The initial size of particles along the x-axis when the Particle Generator first spawns them. - */ - get startSizeX(): ParticleCompositeCurve { - return this._startSizeX; - } - - set startSizeX(value: ParticleCompositeCurve) { - const lastValue = this._startSizeX; - if (value !== lastValue) { - this._startSizeX = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * The initial size of particles along the y-axis when the Particle Generator first spawns them. - */ - get startSizeY(): ParticleCompositeCurve { - return this._startSizeY; - } - - set startSizeY(value: ParticleCompositeCurve) { - const lastValue = this._startSizeY; - if (value !== lastValue) { - this._startSizeY = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * The initial size of particles along the z-axis when the Particle Generator first spawns them. - */ - get startSizeZ(): ParticleCompositeCurve { - return this._startSizeZ; - } - - set startSizeZ(value: ParticleCompositeCurve) { - const lastValue = this._startSizeZ; - if (value !== lastValue) { - this._startSizeZ = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * A scale that this Particle Generator applies to gravity, defined by Physics.gravity. - */ - get gravityModifier(): ParticleCompositeCurve { - return this._gravityModifier; - } - - set gravityModifier(value: ParticleCompositeCurve) { - const lastValue = this._gravityModifier; - if (value !== lastValue) { - this._gravityModifier = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * This selects the space in which to simulate particles. It can be either world or local space. - */ - get simulationSpace(): ParticleSimulationSpace { - return this._simulationSpace; - } - - set simulationSpace(value: ParticleSimulationSpace) { - if (value !== this._simulationSpace) { - this._simulationSpace = value; - - const generator = this._generator; - generator._renderer._onTransformChanged(TransformModifyFlags.WorldMatrix); - - if (value === ParticleSimulationSpace.Local) { - generator._freeBoundsArray(); - } - } - } - /** * Max particles count. */ @@ -250,13 +133,6 @@ export class MainModule implements ICustomClone { */ constructor(generator: ParticleGenerator) { this._generator = generator; - - this.startLifetime = new ParticleCompositeCurve(5); - this.startSpeed = new ParticleCompositeCurve(5); - this.startSizeX = new ParticleCompositeCurve(1); - this.startSizeY = new ParticleCompositeCurve(1); - this.startSizeZ = new ParticleCompositeCurve(1); - this.gravityModifier = new ParticleCompositeCurve(0); } /** @@ -337,16 +213,5 @@ export class MainModule implements ICustomClone { */ _cloneTo(target: MainModule): void { target.maxParticles = this.maxParticles; - - if (target._simulationSpace === ParticleSimulationSpace.World) { - target._generator._generateTransformedBounds(); - } - } - - private _onCompositeCurveChange(lastValue: ParticleCompositeCurve, value: ParticleCompositeCurve): void { - const renderer = this._generator._renderer; - lastValue?._unRegisterOnValueChanged(renderer._onGeneratorParamsChanged); - value?._registerOnValueChanged(renderer._onGeneratorParamsChanged); - renderer._onGeneratorParamsChanged(); } } diff --git a/packages/core/src/particle/modules/ParticleCompositeCurve.ts b/packages/core/src/particle/modules/ParticleCompositeCurve.ts index a4ad00215..0fd65f9c1 100644 --- a/packages/core/src/particle/modules/ParticleCompositeCurve.ts +++ b/packages/core/src/particle/modules/ParticleCompositeCurve.ts @@ -1,95 +1,23 @@ -import { Vector2 } from "@galacean/engine-math"; -import { deepClone, ignoreClone } from "../../clone/CloneManager"; +import { deepClone } from "../../clone/CloneManager"; import { ParticleCurveMode } from "../enums/ParticleCurveMode"; -import { CurveKey, ParticleCurve } from "./ParticleCurve"; -import { UpdateFlagManager } from "../../UpdateFlagManager"; +import { ParticleCurve } from "./ParticleCurve"; /** * Particle composite curve. */ export class ParticleCompositeCurve { - @ignoreClone - private _updateManager = new UpdateFlagManager(); - private _mode = ParticleCurveMode.Constant; - private _constantMin = 0; - private _constantMax = 0; + /** The curve mode. */ + mode: ParticleCurveMode = ParticleCurveMode.Constant; + /** The min constant value used by the curve if mode is set to `TwoConstants`.*/ + constantMin: number = 0; + /** The max constant value used by the curve if mode is set to `TwoConstants`.*/ + constantMax: number = 0; + /** The min curve used by the curve if mode is set to `TwoCurves`. */ @deepClone - private _curveMin: ParticleCurve; + curveMin: ParticleCurve; + /** The max curve used by the curve if mode is set to `TwoCurves`. */ @deepClone - private _curveMax: ParticleCurve; - @ignoreClone - private _updateDispatch: () => void; - - /** - * The curve mode. - */ - get mode(): ParticleCurveMode { - return this._mode; - } - set mode(value: ParticleCurveMode) { - if (value !== this._mode) { - this._mode = value; - this._updateDispatch(); - } - } - - /** - * The min constant value used by the curve if mode is set to `TwoConstants`. - */ - get constantMin(): number { - return this._constantMin; - } - - set constantMin(value: number) { - if (value !== this._constantMin) { - this._constantMin = value; - this._updateDispatch(); - } - } - - /** - * The max constant value used by the curve if mode is set to `TwoConstants`. - */ - get constantMax(): number { - return this._constantMax; - } - - set constantMax(value: number) { - if (value !== this._constantMax) { - this._constantMax = value; - this._updateDispatch(); - } - } - - /** - * The min curve used by the curve if mode is set to `TwoCurves`. - */ - get curveMin(): ParticleCurve { - return this._curveMin; - } - - set curveMin(value: ParticleCurve) { - const lastCurve = this._curveMin; - if (value !== lastCurve) { - this._curveMin = value; - this._onCurveChange(lastCurve, value); - } - } - - /** - * The max curve used by the curve if mode is set to `TwoCurves`. - */ - get curveMax(): ParticleCurve { - return this._curveMax; - } - - set curveMax(value: ParticleCurve) { - const lastCurve = this._curveMax; - if (value !== lastCurve) { - this._curveMax = value; - this._onCurveChange(lastCurve, value); - } - } + curveMax: ParticleCurve; /** * The constant value used by the curve if mode is set to `Constant`. @@ -140,7 +68,6 @@ export class ParticleCompositeCurve { constructor(curveMin: ParticleCurve, curveMax: ParticleCurve); constructor(constantOrCurve: number | ParticleCurve, constantMaxOrCurveMax?: number | ParticleCurve) { - this._updateDispatch = this._updateManager.dispatch.bind(this._updateManager); if (typeof constantOrCurve === "number") { if (constantMaxOrCurveMax) { this.constantMin = constantOrCurve; @@ -179,99 +106,4 @@ export class ParticleCompositeCurve { break; } } - - /** - * @internal - */ - _getMax(): number { - switch (this.mode) { - case ParticleCurveMode.Constant: - return this.constantMax; - case ParticleCurveMode.TwoConstants: - return Math.max(this.constantMin, this.constantMax); - case ParticleCurveMode.Curve: - return this._getMaxKeyValue(this.curveMax?.keys); - case ParticleCurveMode.TwoCurves: - const min = this._getMaxKeyValue(this.curveMin?.keys); - const max = this._getMaxKeyValue(this.curveMax?.keys); - return min > max ? min : max; - } - } - - /** - * @internal - - */ - _getMinMax(out: Vector2): void { - switch (this.mode) { - case ParticleCurveMode.Constant: - out.x = out.y = this.constantMax; - break; - case ParticleCurveMode.TwoConstants: - out.set(Math.min(this.constantMin, this.constantMax), Math.max(this.constantMin, this.constantMax)); - break; - case ParticleCurveMode.Curve: - out.set(this._getMinKeyValue(this.curveMax?.keys), this._getMaxKeyValue(this.curveMax?.keys)); - break; - case ParticleCurveMode.TwoCurves: - const minCurveMax = this._getMinKeyValue(this.curveMax?.keys); - const minCurveMin = this._getMinKeyValue(this.curveMin?.keys); - - const maxCurveMax = this._getMaxKeyValue(this.curveMax?.keys); - const maxCurveMin = this._getMaxKeyValue(this.curveMin?.keys); - - const min = minCurveMax < minCurveMin ? minCurveMax : minCurveMin; - const max = maxCurveMax > maxCurveMin ? maxCurveMax : maxCurveMin; - - out.set(min, max); - break; - } - } - - /** - * @internal - */ - _registerOnValueChanged(listener: () => void): void { - this._updateManager.addListener(listener); - } - - /** - * @internal - */ - _unRegisterOnValueChanged(listener: () => void): void { - this._updateManager.removeListener(listener); - } - - private _getMaxKeyValue(keys: ReadonlyArray): number { - let max = undefined; - const count = keys?.length ?? 0; - if (count > 0) { - max = keys[0].value; - for (let i = 1; i < count; i++) { - const value = keys[i].value; - max = Math.max(max, value); - } - } - return max; - } - - private _getMinKeyValue(keys: ReadonlyArray): number { - let min = undefined; - const count = keys?.length ?? 0; - if (count > 0) { - min = keys[0].value; - for (let i = 1; i < count; i++) { - const value = keys[i].value; - min = Math.min(min, value); - } - } - return min; - } - - private _onCurveChange(lastValue: ParticleCurve, value: ParticleCurve) { - const dispatch = this._updateDispatch; - lastValue?._unRegisterOnValueChanged(dispatch); - value?._registerOnValueChanged(dispatch); - dispatch(); - } } diff --git a/packages/core/src/particle/modules/ParticleCurve.ts b/packages/core/src/particle/modules/ParticleCurve.ts index 7a2989b85..2a4066a20 100644 --- a/packages/core/src/particle/modules/ParticleCurve.ts +++ b/packages/core/src/particle/modules/ParticleCurve.ts @@ -1,19 +1,14 @@ -import { UpdateFlagManager } from "../../UpdateFlagManager"; import { deepClone, ignoreClone } from "../../clone/CloneManager"; /** * Particle curve. */ export class ParticleCurve { - @ignoreClone - private _updateManager = new UpdateFlagManager(); @deepClone - private _keys = new Array(); + private _keys: CurveKey[] = []; @ignoreClone private _typeArray: Float32Array; - private _typeArrayDirty = false; - @ignoreClone - private _updateDispatch: () => void; + private _typeArrayDirty: boolean = false; /** * The keys of the curve. @@ -27,8 +22,6 @@ export class ParticleCurve { * @param keys - The keys of the curve */ constructor(...keys: CurveKey[]) { - this._updateDispatch = this._updateManager.dispatch.bind(this._updateManager); - for (let i = 0, n = keys.length; i < n; i++) { const key = keys[i]; this.addKey(key); @@ -57,8 +50,6 @@ export class ParticleCurve { const key = typeof timeOrKey === "number" ? new CurveKey(timeOrKey, value) : timeOrKey; this._addKey(keys, key); - key._registerOnValueChanged(this._updateDispatch); - this._updateDispatch(); this._typeArrayDirty = true; } @@ -69,9 +60,6 @@ export class ParticleCurve { removeKey(index: number): void { this._keys.splice(index, 1); this._typeArrayDirty = true; - const removeKey = this._keys[index]; - removeKey._unRegisterOnValueChanged(this._updateDispatch); - this._updateDispatch(); } /** @@ -104,20 +92,6 @@ export class ParticleCurve { return typeArray; } - /** - * @internal - */ - _registerOnValueChanged(listener: () => void): void { - this._updateManager.addListener(listener); - } - - /** - * @internal - */ - _unRegisterOnValueChanged(listener: () => void): void { - this._updateManager.removeListener(listener); - } - private _addKey(keys: CurveKey[], key: CurveKey): void { const count = keys.length; const time = key.time; @@ -136,58 +110,13 @@ export class ParticleCurve { * The key of the curve. */ export class CurveKey { - @ignoreClone - private _updateManager = new UpdateFlagManager(); - private _time: number; - private _value: number; - - /** - * The key time. - */ - get time(): number { - return this._time; - } - - set time(value: number) { - if (value !== this._time) { - this._time = value; - this._updateManager.dispatch(); - } - } - - /** - * The key value. - */ - get value(): number { - return this._value; - } - - set value(value: number) { - if (value !== this._value) { - this._value = value; - this._updateManager.dispatch(); - } - } - /** * Create a new key. */ - constructor(time: number, value: number) { - this._time = time; - this._value = value; - } - - /** - * @internal - */ - _registerOnValueChanged(listener: () => void): void { - this._updateManager.addListener(listener); - } - - /** - * @internal - */ - _unRegisterOnValueChanged(listener: () => void): void { - this._updateManager.removeListener(listener); - } + constructor( + /** The key time. */ + public time: number, + /** The key value. */ + public value: number + ) {} } diff --git a/packages/core/src/particle/modules/ParticleGeneratorModule.ts b/packages/core/src/particle/modules/ParticleGeneratorModule.ts index bf2b5b8e7..bc82764e1 100644 --- a/packages/core/src/particle/modules/ParticleGeneratorModule.ts +++ b/packages/core/src/particle/modules/ParticleGeneratorModule.ts @@ -6,22 +6,12 @@ import { ParticleGenerator } from "../ParticleGenerator"; * Particle generator module. */ export abstract class ParticleGeneratorModule { + /** Specifies whether the module is enabled or not. */ + enabled: boolean = false; + @ignoreClone protected _generator: ParticleGenerator; - protected _enabled: boolean = false; - - /** - * Specifies whether the module is enabled or not. - */ - get enabled(): boolean { - return this._enabled; - } - - set enabled(value: boolean) { - this._enabled = value; - } - /** * @internal */ diff --git a/packages/core/src/particle/modules/ParticleGradient.ts b/packages/core/src/particle/modules/ParticleGradient.ts index 03c055c3d..db53b87b7 100644 --- a/packages/core/src/particle/modules/ParticleGradient.ts +++ b/packages/core/src/particle/modules/ParticleGradient.ts @@ -215,12 +215,10 @@ export class ParticleGradient { keys.splice(index, 1); } - @ignoreClone private _setColorTypeArrayDirty(): void { this._colorTypeArrayDirty = true; } - @ignoreClone private _setAlphaTypeArrayDirty(): void { this._alphaTypeArrayDirty = true; } diff --git a/packages/core/src/particle/modules/SizeOverLifetimeModule.ts b/packages/core/src/particle/modules/SizeOverLifetimeModule.ts index 426bb3a30..3c80e938c 100644 --- a/packages/core/src/particle/modules/SizeOverLifetimeModule.ts +++ b/packages/core/src/particle/modules/SizeOverLifetimeModule.ts @@ -2,7 +2,6 @@ import { deepClone, ignoreClone } from "../../clone/CloneManager"; import { ShaderData } from "../../shader/ShaderData"; import { ShaderMacro } from "../../shader/ShaderMacro"; import { ShaderProperty } from "../../shader/ShaderProperty"; -import { ParticleGenerator } from "../ParticleGenerator"; import { ParticleCurveMode } from "../enums/ParticleCurveMode"; import { ParticleCompositeCurve } from "./ParticleCompositeCurve"; import { CurveKey, ParticleCurve } from "./ParticleCurve"; @@ -23,13 +22,17 @@ export class SizeOverLifetimeModule extends ParticleGeneratorModule { static readonly _maxCurveYProperty = ShaderProperty.getByName("renderer_SOLMaxCurveY"); static readonly _maxCurveZProperty = ShaderProperty.getByName("renderer_SOLMaxCurveZ"); - private _separateAxes = false; + /** Specifies whether the Size is separate on each axis. */ + separateAxes = false; + /** Size curve over lifetime for x axis. */ @deepClone - private _sizeX: ParticleCompositeCurve; + sizeX = new ParticleCompositeCurve(new ParticleCurve(new CurveKey(0, 0), new CurveKey(1, 1))); + /** Size curve over lifetime for y axis. */ @deepClone - private _sizeY: ParticleCompositeCurve; + sizeY = new ParticleCompositeCurve(new ParticleCurve(new CurveKey(0, 0), new CurveKey(1, 1))); + /** Size curve over lifetime for z axis. */ @deepClone - private _sizeZ: ParticleCompositeCurve; + sizeZ = new ParticleCompositeCurve(new ParticleCurve(new CurveKey(0, 0), new CurveKey(1, 1))); @ignoreClone private _enableSeparateMacro: ShaderMacro; @@ -38,65 +41,6 @@ export class SizeOverLifetimeModule extends ParticleGeneratorModule { @ignoreClone private _isRandomTwoMacro: ShaderMacro; - /** - * Specifies whether the Size is separate on each axis. - */ - set separateAxes(value: boolean) { - if (value !== this._separateAxes) { - this._separateAxes = value; - this._generator._renderer._onGeneratorParamsChanged(); - } - } - - get separateAxes(): boolean { - return this._separateAxes; - } - - /** - * Size curve over lifetime for x axis. - */ - get sizeX(): ParticleCompositeCurve { - return this._sizeX; - } - - set sizeX(value: ParticleCompositeCurve) { - const lastValue = this._sizeX; - if (value !== lastValue) { - this._sizeX = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * Size curve over lifetime for y axis. - */ - get sizeY(): ParticleCompositeCurve { - return this._sizeY; - } - - set sizeY(value: ParticleCompositeCurve) { - const lastValue = this._sizeY; - if (value !== lastValue) { - this._sizeY = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * Size curve over lifetime for z axis. - */ - get sizeZ(): ParticleCompositeCurve { - return this._sizeZ; - } - - set sizeZ(value: ParticleCompositeCurve) { - const lastValue = this._sizeZ; - if (value !== lastValue) { - this._sizeZ = value; - this._onCompositeCurveChange(lastValue, value); - } - } - /** * Size curve over lifetime. */ @@ -108,14 +52,6 @@ export class SizeOverLifetimeModule extends ParticleGeneratorModule { this.sizeX = value; } - constructor(generator: ParticleGenerator) { - super(generator); - - this.sizeX = new ParticleCompositeCurve(new ParticleCurve(new CurveKey(0, 0), new CurveKey(1, 1))); - this.sizeY = new ParticleCompositeCurve(new ParticleCurve(new CurveKey(0, 0), new CurveKey(1, 1))); - this.sizeZ = new ParticleCompositeCurve(new ParticleCurve(new CurveKey(0, 0), new CurveKey(1, 1))); - } - /** * @internal */ @@ -169,11 +105,4 @@ export class SizeOverLifetimeModule extends ParticleGeneratorModule { this._isCurveMacro = this._enableMacro(shaderData, this._isCurveMacro, isCurveMacro); this._isRandomTwoMacro = this._enableMacro(shaderData, this._isRandomTwoMacro, isRandomTwoMacro); } - - private _onCompositeCurveChange(lastValue: ParticleCompositeCurve, value: ParticleCompositeCurve): void { - const renderer = this._generator._renderer; - lastValue?._unRegisterOnValueChanged(renderer._onGeneratorParamsChanged); - value?._registerOnValueChanged(renderer._onGeneratorParamsChanged); - renderer._onGeneratorParamsChanged(); - } } diff --git a/packages/core/src/particle/modules/VelocityOverLifetimeModule.ts b/packages/core/src/particle/modules/VelocityOverLifetimeModule.ts index 2ea958351..7e986b7dc 100644 --- a/packages/core/src/particle/modules/VelocityOverLifetimeModule.ts +++ b/packages/core/src/particle/modules/VelocityOverLifetimeModule.ts @@ -8,7 +8,6 @@ import { ParticleRandomSubSeeds } from "../enums/ParticleRandomSubSeeds"; import { ParticleSimulationSpace } from "../enums/ParticleSimulationSpace"; import { ParticleCompositeCurve } from "./ParticleCompositeCurve"; import { ParticleGeneratorModule } from "./ParticleGeneratorModule"; -import { ParticleGenerator } from "../ParticleGenerator"; /** * Velocity over lifetime module. @@ -29,6 +28,19 @@ export class VelocityOverLifetimeModule extends ParticleGeneratorModule { static readonly _maxGradientZProperty = ShaderProperty.getByName("renderer_VOLMaxGradientZ"); static readonly _spaceProperty = ShaderProperty.getByName("renderer_VOLSpace"); + /** Velocity over lifetime for x axis. */ + @deepClone + velocityX = new ParticleCompositeCurve(0); + /** Velocity over lifetime for z axis. */ + @deepClone + velocityY = new ParticleCompositeCurve(0); + /** Velocity over lifetime for z axis. */ + @deepClone + velocityZ = new ParticleCompositeCurve(0); + + /** Velocity space. */ + space = ParticleSimulationSpace.Local; + /** @internal */ @ignoreClone _velocityRand = new Rand(0, ParticleRandomSubSeeds.VelocityOverLifetime); @@ -40,92 +52,6 @@ export class VelocityOverLifetimeModule extends ParticleGeneratorModule { @ignoreClone private _velocityMacro: ShaderMacro; - @deepClone - private _velocityX: ParticleCompositeCurve; - @deepClone - private _velocityY: ParticleCompositeCurve; - @deepClone - private _velocityZ: ParticleCompositeCurve; - private _space = ParticleSimulationSpace.Local; - - /** - * Velocity over lifetime for x axis. - */ - get velocityX(): ParticleCompositeCurve { - return this._velocityX; - } - - set velocityX(value: ParticleCompositeCurve) { - const lastValue = this._velocityX; - if (value !== lastValue) { - this._velocityX = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * Velocity over lifetime for y axis. - */ - get velocityY(): ParticleCompositeCurve { - return this._velocityY; - } - - set velocityY(value: ParticleCompositeCurve) { - const lastValue = this._velocityY; - if (value !== lastValue) { - this._velocityY = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * Velocity over lifetime for z axis. - */ - get velocityZ(): ParticleCompositeCurve { - return this._velocityZ; - } - - set velocityZ(value: ParticleCompositeCurve) { - const lastValue = this._velocityZ; - if (value !== lastValue) { - this._velocityZ = value; - this._onCompositeCurveChange(lastValue, value); - } - } - - /** - * Velocity space. - */ - get space(): ParticleSimulationSpace { - return this._space; - } - - set space(value: ParticleSimulationSpace) { - if (value !== this._space) { - this._space = value; - this._generator._renderer._onGeneratorParamsChanged(); - } - } - - override get enabled(): boolean { - return this._enabled; - } - - override set enabled(value: boolean) { - if (value !== this._enabled) { - this._enabled = value; - this._generator._renderer._onGeneratorParamsChanged(); - } - } - - constructor(generator: ParticleGenerator) { - super(generator); - - this.velocityX = new ParticleCompositeCurve(0); - this.velocityY = new ParticleCompositeCurve(0); - this.velocityZ = new ParticleCompositeCurve(0); - } - /** * @internal */ @@ -196,11 +122,4 @@ export class VelocityOverLifetimeModule extends ParticleGeneratorModule { _resetRandomSeed(seed: number): void { this._velocityRand.reset(seed, ParticleRandomSubSeeds.VelocityOverLifetime); } - - private _onCompositeCurveChange(lastValue: ParticleCompositeCurve, value: ParticleCompositeCurve): void { - const renderer = this._generator._renderer; - lastValue?._unRegisterOnValueChanged(renderer._onGeneratorParamsChanged); - value?._registerOnValueChanged(renderer._onGeneratorParamsChanged); - renderer._onGeneratorParamsChanged(); - } } diff --git a/packages/core/src/particle/modules/shape/BaseShape.ts b/packages/core/src/particle/modules/shape/BaseShape.ts index 87347b3e0..abfb542fb 100644 --- a/packages/core/src/particle/modules/shape/BaseShape.ts +++ b/packages/core/src/particle/modules/shape/BaseShape.ts @@ -1,7 +1,5 @@ import { Rand, Vector3 } from "@galacean/engine-math"; import { ParticleShapeType } from "./enums/ParticleShapeType"; -import { UpdateFlagManager } from "../../../UpdateFlagManager"; -import { ignoreClone } from "../../../clone/CloneManager"; /** * Base class for all particle shapes. @@ -9,67 +7,15 @@ import { ignoreClone } from "../../../clone/CloneManager"; export abstract class BaseShape { /** The type of shape to emit particles from. */ abstract readonly shapeType: ParticleShapeType; - - @ignoreClone - protected _updateManager = new UpdateFlagManager(); - - private _enabled = true; - private _randomDirectionAmount = 0; - - /** - * Specifies whether the ShapeModule is enabled or disabled. - */ - get enabled(): boolean { - return this._enabled; - } - - set enabled(value: boolean) { - if (value !== this._enabled) { - this._enabled = value; - this._updateManager.dispatch(); - } - } - - /** - * Randomizes the starting direction of particles. - */ - get randomDirectionAmount(): number { - return this._randomDirectionAmount; - } - - set randomDirectionAmount(value: number) { - if (value !== this._randomDirectionAmount) { - this._randomDirectionAmount = value; - this._updateManager.dispatch(); - } - } + /** Specifies whether the ShapeModule is enabled or disabled. */ + enabled: boolean = true; + /** Randomizes the starting direction of particles. */ + randomDirectionAmount: number = 0; /** * @internal */ - _registerOnValueChanged(listener: () => void): void { - this._updateManager.addListener(listener); + _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { + throw new Error("BaseShape: must override it."); } - - /** - * @internal - */ - _unRegisterOnValueChanged(listener: () => void): void { - this._updateManager.removeListener(listener); - } - - /** - * @internal - */ - abstract _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void; - - /** - * @internal - */ - abstract _getDirectionRange(outMin: Vector3, outMax: Vector3): void; - - /** - * @internal - */ - abstract _getPositionRange(outMin: Vector3, outMax: Vector3): void; } diff --git a/packages/core/src/particle/modules/shape/BoxShape.ts b/packages/core/src/particle/modules/shape/BoxShape.ts index 5d23f54c8..c55a0ace7 100644 --- a/packages/core/src/particle/modules/shape/BoxShape.ts +++ b/packages/core/src/particle/modules/shape/BoxShape.ts @@ -12,32 +12,14 @@ export class BoxShape extends BaseShape { readonly shapeType = ParticleShapeType.Box; + /** The size of the box. */ @deepClone - private _size = new Vector3(1, 1, 1); - - /** - * The size of the box. - */ - get size() { - return this._size; - } - - set size(value: Vector3) { - if (value !== this._size) { - this._size.copyFrom(value); - } - } - - constructor() { - super(); - // @ts-ignore - this._size._onValueChanged = this._updateManager.dispatch.bind(this._updateManager); - } + size = new Vector3(1, 1, 1); /** * @internal */ - _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { + override _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { ShapeUtils._randomPointInsideHalfUnitBox(position, rand); position.multiply(this.size); @@ -46,30 +28,4 @@ export class BoxShape extends BaseShape { ShapeUtils._randomPointUnitSphere(direction, rand); Vector3.lerp(defaultDirection, direction, this.randomDirectionAmount, direction); } - - /** - * @internal - */ - _getDirectionRange(outMin: Vector3, outMax: Vector3): void { - const radian = Math.PI * this.randomDirectionAmount; - - if (this.randomDirectionAmount < 0.5) { - const dirSin = Math.sin(radian); - outMin.set(-dirSin, -dirSin, -1); - outMax.set(dirSin, dirSin, 0); - } else { - const dirCos = Math.cos(radian); - outMin.set(-1, -1, -1); - outMax.set(1, 1, -dirCos); - } - } - - /** - * @internal - */ - _getPositionRange(outMin: Vector3, outMax: Vector3): void { - const { x, y, z } = this._size; - outMin.set(-x * 0.5, -y * 0.5, -z * 0.5); - outMax.set(x * 0.5, y * 0.5, z * 0.5); - } } diff --git a/packages/core/src/particle/modules/shape/CircleShape.ts b/packages/core/src/particle/modules/shape/CircleShape.ts index 75e18e850..6210f7dc9 100644 --- a/packages/core/src/particle/modules/shape/CircleShape.ts +++ b/packages/core/src/particle/modules/shape/CircleShape.ts @@ -8,75 +8,23 @@ import { ParticleShapeType } from "./enums/ParticleShapeType"; * Particle shape that emits particles from a circle. */ export class CircleShape extends BaseShape { - private static _tempPositionPoint = new Vector2(); + private static _tempPositionPoint: Vector2 = new Vector2(); readonly shapeType = ParticleShapeType.Circle; - private _radius = 1.0; - private _arc = 360.0; - private _arcMode = ParticleShapeArcMode.Random; - private _arcSpeed = 1.0; - - /** - * Radius of the shape to emit particles from. - */ - get radius(): number { - return this._radius; - } - - set radius(value: number) { - if (value !== this._radius) { - this._radius = value; - this._updateManager.dispatch(); - } - } - - /** - * Angle of the circle arc to emit particles from. - */ - get arc(): number { - return this._arc; - } - - set arc(value: number) { - if (value !== this._arc) { - this._arc = value; - this._updateManager.dispatch(); - } - } - - /** - * The mode to generate particles around the arc. - */ - get arcMode(): ParticleShapeArcMode { - return this._arcMode; - } - - set arcMode(value: ParticleShapeArcMode) { - if (value !== this._arcMode) { - this._arcMode = value; - this._updateManager.dispatch(); - } - } - - /** - * The speed of complete 360 degree rotation. - */ - get arcSpeed(): number { - return this._arcSpeed; - } - - set arcSpeed(value: number) { - if (value !== this._arcSpeed) { - this._arcSpeed = value; - this._updateManager.dispatch(); - } - } + /** Radius of the shape to emit particles from. */ + radius = 1.0; + /** Angle of the circle arc to emit particles from. */ + arc = 360.0; + /** The mode to generate particles around the arc. */ + arcMode = ParticleShapeArcMode.Random; + /** The speed of complete 360 degree rotation. */ + arcSpeed = 1.0; /** * @internal */ - _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { + override _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { const positionPoint = CircleShape._tempPositionPoint; switch (this.arcMode) { @@ -97,49 +45,4 @@ export class CircleShape extends BaseShape { ShapeUtils._randomPointUnitSphere(direction, rand); Vector3.lerp(position, direction, this.randomDirectionAmount, direction); } - - /** - * @internal - */ - _getDirectionRange(outMin: Vector3, outMax: Vector3): void { - const randomDirZ = this.randomDirectionAmount > 0.5 ? 1 : Math.sin(this.randomDirectionAmount * Math.PI); - const randomDegreeOnXY = 0.5 * (360 - this._arc) * this.randomDirectionAmount; - const randomDirY = randomDegreeOnXY > 90 ? -1 : -Math.sin(randomDegreeOnXY); - this._getUnitArcRange(this._arc + randomDegreeOnXY, outMin, outMax, randomDirY, randomDirZ); - } - - /** - * @internal - */ - _getPositionRange(outMin: Vector3, outMax: Vector3): void { - this._getUnitArcRange(this._arc, outMin, outMax, 0, 0); - outMin.scale(this._radius); - outMax.scale(this._radius); - } - - private _getUnitArcRange( - arc: number, - outMin: Vector3, - outMax: Vector3, - randomDirY: number, - randomDirZ: number - ): void { - const radian = MathUtil.degreeToRadian(arc); - const dirSin = Math.sin(radian); - const dirCos = Math.cos(radian); - - if (arc < 90) { - outMin.set(0, randomDirY, -randomDirZ); - outMax.set(1, dirSin, randomDirZ); - } else if (arc < 180) { - outMin.set(dirCos, randomDirY, -randomDirZ); - outMax.set(1, 1, randomDirZ); - } else if (arc < 270) { - outMin.set(-1, Math.min(dirSin, randomDirY), -randomDirZ); - outMax.set(1, 1, randomDirZ); - } else { - outMin.set(-1, -1, -randomDirZ); - outMax.set(1, 1, randomDirZ); - } - } } diff --git a/packages/core/src/particle/modules/shape/ConeShape.ts b/packages/core/src/particle/modules/shape/ConeShape.ts index a18558826..cb24dedf3 100644 --- a/packages/core/src/particle/modules/shape/ConeShape.ts +++ b/packages/core/src/particle/modules/shape/ConeShape.ts @@ -14,71 +14,19 @@ export class ConeShape extends BaseShape { readonly shapeType = ParticleShapeType.Cone; - private _angle = 25.0; - private _radius = 1.0; - private _length = 5.0; - private _emitType = ConeEmitType.Base; - - /** - * Angle of the cone to emit particles from. - */ - get angle(): number { - return this._angle; - } - - set angle(value: number) { - if (value !== this._angle) { - this._angle = value; - this._updateManager.dispatch(); - } - } - - /** - * Radius of the shape to emit particles from. - */ - get radius(): number { - return this._radius; - } - - set radius(value: number) { - if (value !== this._radius) { - this._radius = value; - this._updateManager.dispatch(); - } - } - - /** - * Length of the cone to emit particles from. - */ - get length(): number { - return this._length; - } - - set length(value: number) { - if (value !== this._length) { - this._length = value; - this._updateManager.dispatch(); - } - } - - /** - * Cone emitter type. - */ - get emitType(): ConeEmitType { - return this._emitType; - } - - set emitType(value: ConeEmitType) { - if (value !== this._emitType) { - this._emitType = value; - this._updateManager.dispatch(); - } - } + /** Angle of the cone to emit particles from. */ + angle = 25.0; + /** Radius of the shape to emit particles from. */ + radius = 1.0; + /** Length of the cone to emit particles from. */ + length = 5.0; + /** Cone emitter type. */ + emitType = ConeEmitType.Base; /** * @internal */ - _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { + override _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { const unitPosition = ConeShape._tempVector20; const radian = MathUtil.degreeToRadian(this.angle); const dirSinA = Math.sin(radian); @@ -111,47 +59,6 @@ export class ConeShape extends BaseShape { break; } } - - /** - * @internal - */ - _getDirectionRange(outMin: Vector3, outMax: Vector3): void { - let radian = 0; - switch (this.emitType) { - case ConeEmitType.Base: - radian = MathUtil.degreeToRadian(this._angle); - - break; - case ConeEmitType.Volume: - const randomRadian = MathUtil.degreeToRadian((180 - this._angle) * this.randomDirectionAmount + this._angle); - radian = Math.sin(randomRadian); - break; - } - - const dirSin = Math.sin(radian); - outMin.set(-dirSin, -dirSin, -1); - outMax.set(dirSin, dirSin, 0); - } - - /** - * @internal - */ - _getPositionRange(outMin: Vector3, outMax: Vector3): void { - const { radius } = this; - - switch (this.emitType) { - case ConeEmitType.Base: - outMin.set(-radius, -radius, 0); - outMax.set(radius, radius, 0); - break; - case ConeEmitType.Volume: - const { length } = this; - const dirSin = Math.sin(MathUtil.degreeToRadian(this._angle)); - outMin.set(-radius - dirSin * length, -radius - dirSin * length, -length); - outMax.set(radius + dirSin * length, radius + dirSin * length, 0); - break; - } - } } /** diff --git a/packages/core/src/particle/modules/shape/HemisphereShape.ts b/packages/core/src/particle/modules/shape/HemisphereShape.ts index 6001460b5..e350de298 100644 --- a/packages/core/src/particle/modules/shape/HemisphereShape.ts +++ b/packages/core/src/particle/modules/shape/HemisphereShape.ts @@ -9,26 +9,13 @@ import { ParticleShapeType } from "./enums/ParticleShapeType"; export class HemisphereShape extends BaseShape { readonly shapeType = ParticleShapeType.Hemisphere; - private _radius = 1.0; - - /** - * Radius of the shape to emit particles from. - */ - get radius(): number { - return this._radius; - } - - set radius(value: number) { - if (value !== this._radius) { - this._radius = value; - this._updateManager.dispatch(); - } - } + /** Radius of the shape to emit particles from. */ + radius = 1.0; /** * @internal */ - _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { + override _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { ShapeUtils._randomPointInsideUnitSphere(position, rand); position.scale(this.radius); @@ -38,22 +25,4 @@ export class HemisphereShape extends BaseShape { ShapeUtils._randomPointUnitSphere(direction, rand); Vector3.lerp(position, direction, this.randomDirectionAmount, direction); } - - /** - * @internal - */ - _getDirectionRange(outMin: Vector3, outMax: Vector3): void { - const randomDir = Math.sin(0.5 * this.randomDirectionAmount * Math.PI); - outMin.set(-1, -1, -1); - outMax.set(1, 1, randomDir); - } - - /** - * @internal - */ - _getPositionRange(outMin: Vector3, outMax: Vector3): void { - const radius = this._radius; - outMin.set(-radius, -radius, -radius); - outMax.set(radius, radius, 0); - } } diff --git a/packages/core/src/particle/modules/shape/SphereShape.ts b/packages/core/src/particle/modules/shape/SphereShape.ts index 269ff20d4..4972de275 100644 --- a/packages/core/src/particle/modules/shape/SphereShape.ts +++ b/packages/core/src/particle/modules/shape/SphereShape.ts @@ -9,47 +9,17 @@ import { ParticleShapeType } from "./enums/ParticleShapeType"; export class SphereShape extends BaseShape { readonly shapeType = ParticleShapeType.Sphere; - private _radius = 1.0; - - /** - * Radius of the shape to emit particles from. - */ - get radius(): number { - return this._radius; - } - - set radius(value: number) { - if (value !== this._radius) { - this._radius = value; - this._updateManager.dispatch(); - } - } + /** Radius of the shape to emit particles from. */ + radius = 1.0; /** * @internal */ - _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { + override _generatePositionAndDirection(rand: Rand, emitTime: number, position: Vector3, direction: Vector3): void { ShapeUtils._randomPointInsideUnitSphere(position, rand); position.scale(this.radius); ShapeUtils._randomPointUnitSphere(direction, rand); Vector3.lerp(position, direction, this.randomDirectionAmount, direction); } - - /** - * @internal - */ - _getDirectionRange(outMin: Vector3, outMax: Vector3): void { - outMin.set(-1, -1, -1); - outMax.set(1, 1, 1); - } - - /** - * @internal - */ - _getPositionRange(outMin: Vector3, outMax: Vector3): void { - const radius = this._radius; - outMin.set(-radius, -radius, -radius); - outMax.set(radius, radius, radius); - } } diff --git a/tests/src/core/particle/ParticleBoundingBox.test.ts b/tests/src/core/particle/ParticleBoundingBox.test.ts deleted file mode 100644 index 3a2acfa68..000000000 --- a/tests/src/core/particle/ParticleBoundingBox.test.ts +++ /dev/null @@ -1,428 +0,0 @@ -import { - ParticleRenderer, - BoxShape, - ParticleMaterial, - Camera, - SphereShape, - HemisphereShape, - CircleShape, - ConeShape, - ParticleShapeArcMode, - ConeEmitType, - Entity, - ParticleCurveMode, - Engine, - ParticleStopMode -} from "@galacean/engine-core"; -import { Color, Vector3 } from "@galacean/engine-math"; -import { WebGLEngine } from "@galacean/engine-rhi-webgl"; -import { LitePhysics } from "@galacean/engine-physics-lite"; -import { expect } from "chai"; - -const delta = 0.2; - -function expectObjectToBeCloseTo(actual, expected, delta) { - Object.keys(expected).forEach((key) => { - expect(actual[key]).to.be.closeTo(expected[key], delta); - }); -} - -export const updateEngine = (engine: Engine, deltaTime = 100) => { - //@ts-ignore - engine._vSyncCount = Infinity; - //@ts-ignore - engine._time._lastSystemTime = 0; - let times = 0; - performance.now = function () { - times++; - return times * deltaTime; - }; - for (let i = 0; i < 50; ++i) { - engine.update(); - } -}; - -function testParticleRendererBounds( - engine: Engine, - render: ParticleRenderer, - expectedMinBounds: { x: number; y: number; z: number }, - expectedMaxBounds: { x: number; y: number; z: number }, - delta: number -) { - render.generator.stop(true, ParticleStopMode.StopEmittingAndClear); - render.generator.play(); - updateEngine(engine); - expectObjectToBeCloseTo(render.bounds.min, expectedMinBounds, delta); - expectObjectToBeCloseTo(render.bounds.max, expectedMaxBounds, delta); -} - -describe("ParticleBoundingBox", function () { - let engine: Engine; - let particleRenderer: ParticleRenderer; - let entity: Entity; - - before(async function () { - engine = await WebGLEngine.create({ canvas: document.createElement("canvas"), physics: new LitePhysics() }); - const scene = engine.sceneManager.activeScene; - const rootEntity = scene.createRootEntity("root"); - - const cameraEntity = rootEntity.createChild("camera"); - cameraEntity.addComponent(Camera); - cameraEntity.transform.setPosition(0, 0, -10); - cameraEntity.transform.lookAt(new Vector3()); - - entity = rootEntity.createChild("particle"); - particleRenderer = entity.addComponent(ParticleRenderer); - const material = new ParticleMaterial(engine); - material.baseColor = new Color(1.0, 1.0, 1.0, 1.0); - particleRenderer.setMaterial(material); - - engine.run(); - }); - - beforeEach(function () { - particleRenderer.generator.stop(true, ParticleStopMode.StopEmittingAndClear); - entity.transform.position.set(0, 0, 0); - entity.transform.rotation.set(0, 0, 0); - entity.transform.scale.set(1, 1, 1); - - particleRenderer.generator.main.startSpeed.mode = ParticleCurveMode.Constant; - particleRenderer.generator.main.startSpeed.constant = 5; - - particleRenderer.generator.main.gravityModifier.mode = ParticleCurveMode.Constant; - particleRenderer.generator.main.gravityModifier.constant = 0; - - particleRenderer.generator.velocityOverLifetime.enabled = false; - - particleRenderer.generator.emission.shape = null; - }); - - it("EmptyShape", function () { - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.414, y: -1.414, z: -26.414 }, - { x: 1.414, y: 1.414, z: 1.414 }, - delta - ); - }); - - it("BoxShape", function () { - const shape = new BoxShape(); - particleRenderer.generator.emission.shape = shape; - - // Test that box shape works correctly on boundingBox - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.914, y: -1.914, z: -26.914 }, - { x: 1.914, y: 1.914, z: 1.914 }, - delta - ); - - // Test that size works correctly on boundingBox - shape.size.set(1, 2, 4); - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.914, y: -2.414, z: -28.414 }, - { x: 1.914, y: 2.414, z: 3.414 }, - delta - ); - - // Test that randomDirectionAmount works correctly on boundingBox - shape.randomDirectionAmount = 0.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -26.914, y: -27.414, z: -28.414 }, - { x: 26.914, y: 27.414, z: 3.414 }, - delta - ); - }); - - it("SphereShape", function () { - const shape = new SphereShape(); - particleRenderer.generator.emission.shape = shape; - - // Test that sphere shape works correctly on boundingBox - testParticleRendererBounds( - engine, - particleRenderer, - { x: -27.414, y: -27.414, z: -27.414 }, - { x: 27.414, y: 27.414, z: 27.414 }, - delta - ); - - // Test that radius works correctly on boundingBox - shape.radius = 2.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -28.914 }, - { x: 28.914, y: 28.914, z: 28.914 }, - delta - ); - - // Test that randomDirectionAmount works correctly on boundingBox - shape.randomDirectionAmount = 0.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -28.914 }, - { x: 28.914, y: 28.914, z: 28.914 }, - delta - ); - }); - - it("HemisphereShape", function () { - const shape = new HemisphereShape(); - particleRenderer.generator.emission.shape = shape; - - // Test that hemisphere shape works correctly on boundingBox - testParticleRendererBounds( - engine, - particleRenderer, - { x: -27.414, y: -27.414, z: -27.414 }, - { x: 27.414, y: 27.414, z: 1.414 }, - delta - ); - - // Test that radius works correctly on boundingBox - shape.radius = 2.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -28.914 }, - { x: 28.914, y: 28.914, z: 1.414 }, - delta - ); - - // Test that randomDirectionAmount works correctly on boundingBox - shape.randomDirectionAmount = 0.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -28.914 }, - { x: 28.914, y: 28.914, z: 19.092 }, - delta - ); - }); - - it("CircleShape", function () { - const shape = new CircleShape(); - particleRenderer.generator.emission.shape = shape; - - // Test that circle shape works correctly on boundingBox - testParticleRendererBounds( - engine, - particleRenderer, - { x: -27.414, y: -27.414, z: -1.414 }, - { x: 27.414, y: 27.414, z: 1.414 }, - delta - ); - - // Test that radius works correctly on boundingBox - shape.radius = 2.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -1.414 }, - { x: 28.914, y: 28.914, z: 1.414 }, - delta - ); - - // Test that arc works correctly on boundingBox - shape.arc = 45; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.414, y: -1.414, z: -1.414 }, - { x: 28.914, y: 20.859, z: 1.414 }, - delta - ); - - shape.arc = 135; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -20.859, y: -1.414, z: -1.414 }, - { x: 28.914, y: 28.914, z: 1.414 }, - delta - ); - - shape.arc = 225; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -20.859, z: -1.414 }, - { x: 28.914, y: 28.914, z: 1.414 }, - delta - ); - - shape.arc = 315; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -1.414 }, - { x: 28.914, y: 28.914, z: 1.414 }, - delta - ); - - // Test that arc mode loop works correctly on boundingBox - shape.arcMode = ParticleShapeArcMode.Loop; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -1.414 }, - { x: 28.914, y: 28.914, z: 1.414 }, - delta - ); - - // Test that randomDirectionAmount works correctly on boundingBox - shape.randomDirectionAmount = 0.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -28.914, y: -28.914, z: -26.414 }, - { x: 28.914, y: 28.914, z: 26.414 }, - delta - ); - }); - - it("ConeShape", function () { - const shape = new ConeShape(); - particleRenderer.generator.emission.shape = shape; - - // Test that cone shape works correctly on boundingBox - testParticleRendererBounds( - engine, - particleRenderer, - { x: -12.979, y: -12.979, z: -26.414 }, - { x: 12.979, y: 12.979, z: 1.414 }, - delta - ); - - // Test that radius works correctly on boundingBox - shape.radius = 2.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -14.479, y: -14.479, z: -26.414 }, - { x: 14.479, y: 14.479, z: 1.414 }, - delta - ); - - // Test that angle works correctly on boundingBox - shape.angle = 30; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -16.414, y: -16.414, z: -26.414 }, - { x: 16.414, y: 16.414, z: 1.414 }, - delta - ); - - // Test that arc mode loop works correctly on boundingBox - shape.emitType = ConeEmitType.Volume; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -18.4, y: -18.4, z: -31.414 }, - { x: 18.4, y: 18.4, z: 1.414 }, - delta - ); - - // Test that arc mode loop works correctly on boundingBox - shape.length = 10; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -20.9, y: -20.9, z: -36.414 }, - { x: 20.9, y: 20.9, z: 1.414 }, - delta - ); - - // Test that randomDirectionAmount works correctly on boundingBox - shape.randomDirectionAmount = 0.5; - testParticleRendererBounds( - engine, - particleRenderer, - { x: -29.478, y: -29.478, z: -36.414 }, - { x: 29.478, y: 29.478, z: 1.414 }, - delta - ); - }); - - it("StartSpeed", function () { - particleRenderer.generator.main.startSpeed.mode = ParticleCurveMode.TwoConstants; - particleRenderer.generator.main.startSpeed.constantMin = -10; - particleRenderer.generator.main.startSpeed.constantMax = 2; - - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.414, y: -1.414, z: -11.414 }, - { x: 1.414, y: 1.414, z: 51.414 }, - delta - ); - }); - - it("Gravity", function () { - particleRenderer.generator.main.gravityModifier.mode = ParticleCurveMode.TwoConstants; - particleRenderer.generator.main.gravityModifier.constantMin = -1; - particleRenderer.generator.main.gravityModifier.constantMax = 0.2; - - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.414, y: -25.939, z: -26.414 }, - { x: 1.414, y: 124.039, z: 1.414 }, - delta - ); - }); - - it("VelocityOverLifetime", function () { - this.timeout(10000); - - particleRenderer.generator.main.startSpeed.mode = ParticleCurveMode.Constant; - particleRenderer.generator.main.startSpeed.constant = 0; - - const velocityOverLifetime = particleRenderer.generator.velocityOverLifetime; - const { velocityX, velocityY, velocityZ } = velocityOverLifetime; - velocityOverLifetime.enabled = true; - velocityX.constant = 1; - velocityY.constant = 1; - velocityZ.mode = ParticleCurveMode.TwoConstants; - velocityZ.constantMin = -1; - velocityZ.constantMax = 0.5; - - testParticleRendererBounds( - engine, - particleRenderer, - { x: -1.414, y: -1.414, z: -6.414 }, - { x: 6.414, y: 6.414, z: 3.914 }, - delta - ); - }); - - it("Transform", function () { - entity.transform.position.set(1, 2, 3); - testParticleRendererBounds( - engine, - particleRenderer, - { x: -0.414, y: 0.586, z: -23.414 }, - { x: 2.414, y: 3.414, z: 4.414 }, - delta - ); - - entity.transform.rotation.set(30, 60, 120); - testParticleRendererBounds( - engine, - particleRenderer, - { x: -19.906, y: -0.3798, z: -10.239 }, - { x: 3.156, y: 16.88, z: 5.414 }, - delta - ); - }); -});