载入中...
搜索中...
未找到
ParticleEmitter.h 文件参考
#include "common/ECS.h"
#include "graphics/BlendMode.h"
#include "graphics/Color.h"
#include "particles/ParticleCurve.h"
#include <cstdint>
#include <memory>
#include <random>
#include <string>
#include <vector>

浏览源代码.

struct  eve::particles::Particle
 Single live particle (CPU simulation). 更多...
 
class  eve::particles::ParticleEmitter
 ECS emitter entity. Script configures components; ParticleSimSystem / ParticleRenderSystem drive per-frame update & draw. 更多...
 
struct  eve::particles::ParticleEmitter::Config
 
struct  eve::particles::ParticleEmitter::Config::Burst
 Timed burst emission (fired once while the emitter is active). 更多...
 
struct  eve::particles::ParticleEmitter::Config::ForceField
 Radial attract/repel force fields (strength > 0 attract, < 0 repel). 更多...
 
struct  eve::particles::ParticleEmitter::Config::LightCfg
 Emitter-level 2D light emission (pooled Light2D entities). 更多...
 
struct  eve::particles::ParticleEmitter::Config::SubEmitter
 Script-linked sub-emitters (birth / death / collision triggers). 更多...
 
struct  eve::particles::ParticleEmitter::Sim
 
struct  eve::particles::ParticleEmitter::Draw
 
struct  eve::particles::ParticleEmitter::Resource
 Bound config file for hot reload (empty path = unbound). 更多...
 
struct  eve::particles::ParticleEmitter::Attach
 Optional bone attachment. When enabled, syncAttach() writes Config.x/y (and optionally direction) from a live skeleton each frame. Particles remain 2D; 3D bone XYZ is projected via plane + scale. 更多...
 
struct  eve::particles::ParticleEmitter::SkinSource
 Optional skinned-mesh surface source. When enabled, newly spawned particles sample random (optionally bone-filtered) skinned vertices. 更多...
 
struct  eve::particles::ParticleEmitter::Lights
 Pooled Light2D entities driven by ParticleLightSystem (lights.enabled). 更多...
 
struct  eve::particles::ParticleEmitter::GpuSim
 GPU-accelerated simulation state (see ParticleGpuKernel.h for layout). 更多...
 

命名空间

namespace  eve
 
namespace  eve::graphics
 卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局参数。 数据模型与渲染/交互逻辑见 CardTypes.h。
 
namespace  eve::animation
 
namespace  eve::ik
 
namespace  eve::gpgpu
 
namespace  eve::particles
 

类型定义

using eve::particles::WorldCollisionFn = bool(*)(float x, float y, float radius, float &nx, float &ny)
 World collision query used by emitters with worldCollision enabled.
 

函数

void eve::particles::spawnParticle (ParticleEmitter::Config &cfg, ParticleEmitter::Sim &sim)
 
void eve::particles::spawnParticleAt (ParticleEmitter::Config &cfg, ParticleEmitter::Sim &sim, float x, float y)
 
void eve::particles::stepEmitterSim (ParticleEmitter::Config &cfg, ParticleEmitter::Sim &sim, float dt)
 
bool eve::particles::stepEmitterSimGpu (ParticleEmitter::Config &cfg, ParticleEmitter::Sim &sim, ParticleEmitter::GpuSim &gpu, float dt)
 GPU-accelerated integration step; false = unavailable, caller falls back to CPU.
 
void eve::particles::setWorldCollisionResolver (WorldCollisionFn fn)
 
WorldCollisionFn eve::particles::getWorldCollisionResolver ()
 
void eve::particles::syncEmitterSources (ParticleEmitter::Config &cfg, ParticleEmitter::Sim &sim, ParticleEmitter::Attach &attach, ParticleEmitter::SkinSource &skinSrc)
 Sync bone attach + refresh skin cache; call before stepEmitterSim when using Attach/SkinSource.
 
bool eve::particles::sampleSkinSpawn (ParticleEmitter::SkinSource &skinSrc, ParticleEmitter::Sim &sim, float &outX, float &outY)