载入中...
搜索中...
未找到
eve::particles::ParticleEmitter::Config结构体 参考

#include <ParticleEmitter.h>

struct  Burst
 Timed burst emission (fired once while the emitter is active). 更多...
 
struct  ForceField
 Radial attract/repel force fields (strength > 0 attract, < 0 repel). 更多...
 
struct  LightCfg
 Emitter-level 2D light emission (pooled Light2D entities). 更多...
 
struct  SubEmitter
 Script-linked sub-emitters (birth / death / collision triggers). 更多...
 

Public 属性

float x = 0.f
 
float y = 0.f
 
float emissionRate = 0.f
 
float lifeMin = 1.f
 
float lifeMax = 1.f
 
float emitterLife = -1.f
 
float direction = 0.f
 
float spread = 0.f
 
float speedMin = 0.f
 
float speedMax = 0.f
 
float accelXMin = 0.f
 
float accelYMin = 0.f
 
float accelXMax = 0.f
 
float accelYMax = 0.f
 
float radialMin = 0.f
 
float radialMax = 0.f
 
float tangentialMin = 0.f
 
float tangentialMax = 0.f
 
float particleW = 8.f
 
float particleH = 8.f
 
float sizeStart = 1.f
 
float sizeEnd = 1.f
 
float sizeVariation = 0.f
 
float spinMin = 0.f
 
float spinMax = 0.f
 
float gravityX = 0.f
 Gravity applied every step (world units/s²).
 
float gravityY = 0.f
 
float damping = 0.f
 Per-second velocity damping fraction in [0,1].
 
float limitVelocity = 0.f
 Max speed; 0 = unlimited. Applied after forces each step.
 
ParticleCurve velocityCurve
 Optional speed multiplier curve over lifetime.
 
float inheritVelocity = 0.f
 Fraction [0,1] of the emitter's current velocity added to new particles.
 
std::string simSpace = "world"
 "world" (default) or "local" (particles track the emitter).
 
float noiseStrength = 0.f
 Turbulence: random per-particle acceleration scaled by strength.
 
float noiseFrequency = 1.f
 
float noiseSpeed = 1.f
 
std::string collisionMode = "none"
 "none" | "kill" | "bounce" | "stop" on collision.
 
float collisionRadius = 0.f
 
float collisionRestitution = 0.6f
 
float collisionLifetimeLoss = 0.f
 
bool collisionBoundsEnabled = false
 
float boundsMinX = 0.f
 
float boundsMinY = 0.f
 
float boundsMaxX = 0.f
 
float boundsMaxY = 0.f
 
bool worldCollision = false
 Query the engine-level world collision resolver each step.
 
std::string renderMode = "billboard"
 "billboard" (default) | "stretched" (elongate along velocity).
 
float stretchFactor = 1.f
 
std::string overflowMode = "drop"
 Buffer-full strategy: "drop" (default) | "pause" | "warn".
 
float maxDeltaTime = 0.f
 Cap per-step delta time (0 = unlimited).
 
float prewarmSeconds = 0.f
 Prewarm seconds simulated in start() so the effect is pre-filled.
 
bool gpuSimulation = false
 Opt-in GPU-accelerated simulation (falls back to CPU when unavailable).
 
std::vector< Burstbursts
 
std::vector< ForceFieldforceFields
 
struct eve::particles::ParticleEmitter::Config::LightCfg lights
 
std::vector< SubEmittersubEmitters
 
float startRotMin = 0.f
 Initial rotation in degrees (random between min/max; radians at sim time).
 
float startRotMax = 0.f
 
int hframes = 1
 Flipbook grid. 1x1 = static full texture. frameRate = frames/sec (0 = static).
 
int vframes = 1
 
float frameRate = 0.f
 
float frameRandomStart = 0.f
 0..1 fraction: randomize the starting frame up to this fraction of the sheet.
 
ParticleGradient colorGradient
 Optional multi-stop gradient; overrides colorStart/colorEnd when non-empty.
 
ParticleCurve sizeCurve
 Optional size scale curve over lifetime; overrides sizeStart/sizeEnd.
 
ParticleCurve rotationCurve
 Optional extra rotation (degrees) over lifetime; added on top of spin.
 
std::string areaType = "none"
 "none" | "ellipse" | "rect" (≤15).
 
float areaX = 0.f
 
float areaY = 0.f
 
Color colorStart {1.f, 1.f, 1.f, 1.f}
 
Color colorEnd {1.f, 1.f, 1.f, 0.f}
 
ParticleEmitterentity = nullptr
 

详细描述

在文件 ParticleEmitter.h76 行定义.

类成员变量说明

◆ accelXMax

float eve::particles::ParticleEmitter::Config::accelXMax = 0.f

在文件 ParticleEmitter.h95 行定义.

◆ accelXMin

float eve::particles::ParticleEmitter::Config::accelXMin = 0.f

在文件 ParticleEmitter.h94 行定义.

◆ accelYMax

float eve::particles::ParticleEmitter::Config::accelYMax = 0.f

在文件 ParticleEmitter.h95 行定义.

◆ accelYMin

float eve::particles::ParticleEmitter::Config::accelYMin = 0.f

在文件 ParticleEmitter.h94 行定义.

◆ areaType

std::string eve::particles::ParticleEmitter::Config::areaType = "none"

"none" | "ellipse" | "rect" (≤15).

在文件 ParticleEmitter.h188 行定义.

◆ areaX

float eve::particles::ParticleEmitter::Config::areaX = 0.f

在文件 ParticleEmitter.h189 行定义.

◆ areaY

float eve::particles::ParticleEmitter::Config::areaY = 0.f

在文件 ParticleEmitter.h190 行定义.

◆ boundsMaxX

float eve::particles::ParticleEmitter::Config::boundsMaxX = 0.f

在文件 ParticleEmitter.h130 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ boundsMaxY

float eve::particles::ParticleEmitter::Config::boundsMaxY = 0.f

在文件 ParticleEmitter.h131 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ boundsMinX

float eve::particles::ParticleEmitter::Config::boundsMinX = 0.f

在文件 ParticleEmitter.h128 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ boundsMinY

float eve::particles::ParticleEmitter::Config::boundsMinY = 0.f

在文件 ParticleEmitter.h129 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ bursts

std::vector<Burst> eve::particles::ParticleEmitter::Config::bursts

在文件 ParticleEmitter.h145 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ collisionBoundsEnabled

bool eve::particles::ParticleEmitter::Config::collisionBoundsEnabled = false

在文件 ParticleEmitter.h127 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ collisionLifetimeLoss

float eve::particles::ParticleEmitter::Config::collisionLifetimeLoss = 0.f

在文件 ParticleEmitter.h126 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ collisionMode

std::string eve::particles::ParticleEmitter::Config::collisionMode = "none"

"none" | "kill" | "bounce" | "stop" on collision.

在文件 ParticleEmitter.h123 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ collisionRadius

float eve::particles::ParticleEmitter::Config::collisionRadius = 0.f

在文件 ParticleEmitter.h124 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ collisionRestitution

float eve::particles::ParticleEmitter::Config::collisionRestitution = 0.6f

在文件 ParticleEmitter.h125 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ colorEnd

Color eve::particles::ParticleEmitter::Config::colorEnd {1.f, 1.f, 1.f, 0.f}

在文件 ParticleEmitter.h192 行定义.

◆ colorGradient

ParticleGradient eve::particles::ParticleEmitter::Config::colorGradient

Optional multi-stop gradient; overrides colorStart/colorEnd when non-empty.

在文件 ParticleEmitter.h182 行定义.

◆ colorStart

Color eve::particles::ParticleEmitter::Config::colorStart {1.f, 1.f, 1.f, 1.f}

在文件 ParticleEmitter.h191 行定义.

◆ damping

float eve::particles::ParticleEmitter::Config::damping = 0.f

Per-second velocity damping fraction in [0,1].

在文件 ParticleEmitter.h109 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ direction

float eve::particles::ParticleEmitter::Config::direction = 0.f

在文件 ParticleEmitter.h90 行定义.

◆ emissionRate

float eve::particles::ParticleEmitter::Config::emissionRate = 0.f

在文件 ParticleEmitter.h86 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ emitterLife

float eve::particles::ParticleEmitter::Config::emitterLife = -1.f

在文件 ParticleEmitter.h89 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ entity

ParticleEmitter* eve::particles::ParticleEmitter::Config::entity = nullptr

在文件 ParticleEmitter.h193 行定义.

被这些函数引用 eve::particles::spawnParticle().

◆ forceFields

std::vector<ForceField> eve::particles::ParticleEmitter::Config::forceFields

在文件 ParticleEmitter.h154 行定义.

被这些函数引用 eve::particles::stepEmitterSim().

◆ frameRandomStart

float eve::particles::ParticleEmitter::Config::frameRandomStart = 0.f

0..1 fraction: randomize the starting frame up to this fraction of the sheet.

在文件 ParticleEmitter.h180 行定义.

◆ frameRate

float eve::particles::ParticleEmitter::Config::frameRate = 0.f

在文件 ParticleEmitter.h178 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ gpuSimulation

bool eve::particles::ParticleEmitter::Config::gpuSimulation = false

Opt-in GPU-accelerated simulation (falls back to CPU when unavailable).

在文件 ParticleEmitter.h144 行定义.

◆ gravityX

float eve::particles::ParticleEmitter::Config::gravityX = 0.f

Gravity applied every step (world units/s²).

在文件 ParticleEmitter.h106 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ gravityY

float eve::particles::ParticleEmitter::Config::gravityY = 0.f

在文件 ParticleEmitter.h107 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ hframes

int eve::particles::ParticleEmitter::Config::hframes = 1

Flipbook grid. 1x1 = static full texture. frameRate = frames/sec (0 = static).

在文件 ParticleEmitter.h176 行定义.

◆ inheritVelocity

float eve::particles::ParticleEmitter::Config::inheritVelocity = 0.f

Fraction [0,1] of the emitter's current velocity added to new particles.

在文件 ParticleEmitter.h115 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ lifeMax

float eve::particles::ParticleEmitter::Config::lifeMax = 1.f

在文件 ParticleEmitter.h88 行定义.

◆ lifeMin

float eve::particles::ParticleEmitter::Config::lifeMin = 1.f

在文件 ParticleEmitter.h87 行定义.

◆ lights

struct eve::particles::ParticleEmitter::Config::LightCfg eve::particles::ParticleEmitter::Config::lights

◆ limitVelocity

float eve::particles::ParticleEmitter::Config::limitVelocity = 0.f

Max speed; 0 = unlimited. Applied after forces each step.

在文件 ParticleEmitter.h111 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ maxDeltaTime

float eve::particles::ParticleEmitter::Config::maxDeltaTime = 0.f

Cap per-step delta time (0 = unlimited).

在文件 ParticleEmitter.h140 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ noiseFrequency

float eve::particles::ParticleEmitter::Config::noiseFrequency = 1.f

在文件 ParticleEmitter.h120 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ noiseSpeed

float eve::particles::ParticleEmitter::Config::noiseSpeed = 1.f

在文件 ParticleEmitter.h121 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ noiseStrength

float eve::particles::ParticleEmitter::Config::noiseStrength = 0.f

Turbulence: random per-particle acceleration scaled by strength.

在文件 ParticleEmitter.h119 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ overflowMode

std::string eve::particles::ParticleEmitter::Config::overflowMode = "drop"

Buffer-full strategy: "drop" (default) | "pause" | "warn".

在文件 ParticleEmitter.h138 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ particleH

float eve::particles::ParticleEmitter::Config::particleH = 8.f

在文件 ParticleEmitter.h99 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ particleW

float eve::particles::ParticleEmitter::Config::particleW = 8.f

在文件 ParticleEmitter.h98 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ prewarmSeconds

float eve::particles::ParticleEmitter::Config::prewarmSeconds = 0.f

Prewarm seconds simulated in start() so the effect is pre-filled.

在文件 ParticleEmitter.h142 行定义.

◆ radialMax

float eve::particles::ParticleEmitter::Config::radialMax = 0.f

在文件 ParticleEmitter.h96 行定义.

◆ radialMin

float eve::particles::ParticleEmitter::Config::radialMin = 0.f

在文件 ParticleEmitter.h96 行定义.

◆ renderMode

std::string eve::particles::ParticleEmitter::Config::renderMode = "billboard"

"billboard" (default) | "stretched" (elongate along velocity).

在文件 ParticleEmitter.h135 行定义.

◆ rotationCurve

ParticleCurve eve::particles::ParticleEmitter::Config::rotationCurve

Optional extra rotation (degrees) over lifetime; added on top of spin.

在文件 ParticleEmitter.h186 行定义.

◆ simSpace

std::string eve::particles::ParticleEmitter::Config::simSpace = "world"

"world" (default) or "local" (particles track the emitter).

在文件 ParticleEmitter.h117 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ sizeCurve

ParticleCurve eve::particles::ParticleEmitter::Config::sizeCurve

Optional size scale curve over lifetime; overrides sizeStart/sizeEnd.

在文件 ParticleEmitter.h184 行定义.

◆ sizeEnd

float eve::particles::ParticleEmitter::Config::sizeEnd = 1.f

在文件 ParticleEmitter.h101 行定义.

◆ sizeStart

float eve::particles::ParticleEmitter::Config::sizeStart = 1.f

在文件 ParticleEmitter.h100 行定义.

◆ sizeVariation

float eve::particles::ParticleEmitter::Config::sizeVariation = 0.f

在文件 ParticleEmitter.h102 行定义.

◆ speedMax

float eve::particles::ParticleEmitter::Config::speedMax = 0.f

在文件 ParticleEmitter.h93 行定义.

◆ speedMin

float eve::particles::ParticleEmitter::Config::speedMin = 0.f

在文件 ParticleEmitter.h92 行定义.

◆ spinMax

float eve::particles::ParticleEmitter::Config::spinMax = 0.f

在文件 ParticleEmitter.h104 行定义.

◆ spinMin

float eve::particles::ParticleEmitter::Config::spinMin = 0.f

在文件 ParticleEmitter.h103 行定义.

◆ spread

float eve::particles::ParticleEmitter::Config::spread = 0.f

在文件 ParticleEmitter.h91 行定义.

◆ startRotMax

float eve::particles::ParticleEmitter::Config::startRotMax = 0.f

在文件 ParticleEmitter.h174 行定义.

◆ startRotMin

float eve::particles::ParticleEmitter::Config::startRotMin = 0.f

Initial rotation in degrees (random between min/max; radians at sim time).

在文件 ParticleEmitter.h173 行定义.

◆ stretchFactor

float eve::particles::ParticleEmitter::Config::stretchFactor = 1.f

在文件 ParticleEmitter.h136 行定义.

◆ subEmitters

std::vector<SubEmitter> eve::particles::ParticleEmitter::Config::subEmitters

在文件 ParticleEmitter.h171 行定义.

◆ tangentialMax

float eve::particles::ParticleEmitter::Config::tangentialMax = 0.f

在文件 ParticleEmitter.h97 行定义.

◆ tangentialMin

float eve::particles::ParticleEmitter::Config::tangentialMin = 0.f

在文件 ParticleEmitter.h97 行定义.

◆ velocityCurve

ParticleCurve eve::particles::ParticleEmitter::Config::velocityCurve

Optional speed multiplier curve over lifetime.

在文件 ParticleEmitter.h113 行定义.

被这些函数引用 eve::particles::stepEmitterSim().

◆ vframes

int eve::particles::ParticleEmitter::Config::vframes = 1

在文件 ParticleEmitter.h177 行定义.

◆ worldCollision

bool eve::particles::ParticleEmitter::Config::worldCollision = false

Query the engine-level world collision resolver each step.

在文件 ParticleEmitter.h133 行定义.

被这些函数引用 eve::particles::stepEmitterSim() , 以及 eve::particles::stepEmitterSimGpu().

◆ x

float eve::particles::ParticleEmitter::Config::x = 0.f

◆ y

float eve::particles::ParticleEmitter::Config::y = 0.f

该结构体的文档由以下文件生成: