LDKParticleEmitter
typedef struct LDKParticleEmitter{
bool enabled;
LDKAssetMaterial material;
float emission_rate;
LDKParticleEmissionMode emission_mode;
bool play_on_start;
float emission_duration;
u32 burst_count;
u32 particles_per_burst;
float burst_interval;
u32 max_particles;
float lifetime;
Vec3 initial_velocity;
Vec3 velocity_variation;
Vec3 acceleration;
float initial_scale;
float initial_scale_variation;
float final_scale;
float final_scale_variation;
float initial_alpha;
float initial_alpha_variation;
float final_alpha;
float final_alpha_variation;
u32 initial_tint;
u32 initial_tint_variation;
u32 final_tint;
u32 final_tint_variation;
float initial_rotation;
float initial_rotation_variation;
float final_rotation;
float final_rotation_variation;
LDKParticleInterpolationCurve interpolation_curve;
LDKParticleSimulationSpace simulation_space;
LDKParticleSortMode sort_mode;
bool playing;
bool playback_started;
LDKParticleEmissionMode active_emission_mode;
float active_duration;
u32 active_burst_count;
float emission_elapsed;
u32 bursts_emitted;
LDKParticleRuntime *particles;
u32 particle_count;
u32 particle_capacity;
float emission_accumulator;
u32 random_state;
u32 runtime_error_flags;
}LDKParticleEmitter;
ldk_particle_emitter_clear
Remove all live particles without stopping scheduled emission.
LDK_API void ldk_particle_emitter_clear(LDKParticleEmitter *emitter);
ldk_particle_emitter_emit_bursts
Play the configured burst parameters for exactly count bursts.
LDK_API bool ldk_particle_emitter_emit_bursts(
LDKParticleEmitter *emitter,
u32 count
);
Parameters
LDKParticleEmitter *emitter
- Particle emitter component being controlled.
u32 count
- Number of items to process.
Returns
True if the operation succeeds; false otherwise.
ldk_particle_emitter_emit_for
Play the configured emission rate for the specified duration.
LDK_API bool ldk_particle_emitter_emit_for(
LDKParticleEmitter *emitter,
float seconds
);
Parameters
LDKParticleEmitter *emitter
- Particle emitter component being controlled.
float seconds
- Duration in seconds.
Returns
True if the operation succeeds; false otherwise.
ldk_particle_emitter_make_default
Create default settings for particle emitter.
LDK_API LDKParticleEmitter ldk_particle_emitter_make_default(void);
Returns
A value initialized with the engine defaults.
ldk_particle_emitter_play
Start the configured mode if not playing.
LDK_API bool ldk_particle_emitter_play(LDKParticleEmitter *emitter);
Returns
True if the operation succeeds; false otherwise.
ldk_particle_emitter_restart
Restart the configured mode without killing existing particles.
LDK_API bool ldk_particle_emitter_restart(LDKParticleEmitter *emitter);
Returns
True if the operation succeeds; false otherwise.
ldk_particle_emitter_stop
Stop future emission; live particles continue simulating.
LDK_API void ldk_particle_emitter_stop(LDKParticleEmitter *emitter);