Unravel Engine C++ Reference
Loading...
Searching...
No Matches
ps::Emitter Struct Reference

Public Member Functions

void create (EmitterShape::Enum _shape, EmitterDirection::Enum _direction, uint32_t _maxParticles)
 
void destroy ()
 
void reset ()
 
float calculateParticleSpeed (const Particle &particle, float ttPos) const
 
void updateParticleProperties (EmitterUniforms &uniforms_, Particle &particle, float avgSystemScale, bx::EaseFn easePos, bool hasColorBySpeed, bool hasSizeBySpeed, const math::mat4 &effectiveTransform)
 
void update (EmitterUniforms *_uniforms, float _dt)
 
void getEffectiveTransform (const EmitterUniforms &uniforms_, math::vec3 &outPosition, math::vec3 &outScale, math::vec3 &outEmissionShapeScale, math::mat4 &outTransformMatrix) const
 
void spawn (EmitterUniforms &uniforms_, math::bbox &aabb, float _dt)
 

Public Attributes

EmitterShape::Enum shape_
 
EmitterDirection::Enum direction_
 
float dt_
 
bx::RngMwc rng_
 
math::bbox aabb_
 
Particleparticles_
 
ParticleSortparticle_sort_
 
uint32_t num_particles_
 
uint32_t max_particles_
 
uint32_t total_particles_spawned_
 
bool playing_
 
bool loop_
 
bool first_update_
 

Detailed Description

Definition at line 177 of file particle_system.cpp.

Member Function Documentation

◆ calculateParticleSpeed()

float ps::Emitter::calculateParticleSpeed ( const Particle & particle,
float ttPos ) const
inline

Definition at line 195 of file particle_system.cpp.

◆ create()

void ps::Emitter::create ( EmitterShape::Enum _shape,
EmitterDirection::Enum _direction,
uint32_t _maxParticles )

Definition at line 1018 of file particle_system.cpp.

◆ destroy()

void ps::Emitter::destroy ( )

Definition at line 1029 of file particle_system.cpp.

◆ getEffectiveTransform()

void ps::Emitter::getEffectiveTransform ( const EmitterUniforms & uniforms_,
math::vec3 & outPosition,
math::vec3 & outScale,
math::vec3 & outEmissionShapeScale,
math::mat4 & outTransformMatrix ) const
inline

Definition at line 399 of file particle_system.cpp.

◆ reset()

void ps::Emitter::reset ( )
inline

Definition at line 182 of file particle_system.cpp.

◆ spawn()

void ps::Emitter::spawn ( EmitterUniforms & uniforms_,
math::bbox & aabb,
float _dt )
inline

Definition at line 412 of file particle_system.cpp.

◆ update()

void ps::Emitter::update ( EmitterUniforms * _uniforms,
float _dt )
inline

Definition at line 285 of file particle_system.cpp.

◆ updateParticleProperties()

void ps::Emitter::updateParticleProperties ( EmitterUniforms & uniforms_,
Particle & particle,
float avgSystemScale,
bx::EaseFn easePos,
bool hasColorBySpeed,
bool hasSizeBySpeed,
const math::mat4 & effectiveTransform )
inline

Definition at line 211 of file particle_system.cpp.

Member Data Documentation

◆ aabb_

math::bbox ps::Emitter::aabb_

Definition at line 631 of file particle_system.cpp.

◆ direction_

EmitterDirection::Enum ps::Emitter::direction_

Definition at line 626 of file particle_system.cpp.

◆ dt_

float ps::Emitter::dt_

Definition at line 628 of file particle_system.cpp.

◆ first_update_

bool ps::Emitter::first_update_

Definition at line 642 of file particle_system.cpp.

◆ loop_

bool ps::Emitter::loop_

Definition at line 640 of file particle_system.cpp.

◆ max_particles_

uint32_t ps::Emitter::max_particles_

Definition at line 636 of file particle_system.cpp.

◆ num_particles_

uint32_t ps::Emitter::num_particles_

Definition at line 635 of file particle_system.cpp.

◆ particle_sort_

ParticleSort* ps::Emitter::particle_sort_

Definition at line 634 of file particle_system.cpp.

◆ particles_

Particle* ps::Emitter::particles_

Definition at line 633 of file particle_system.cpp.

◆ playing_

bool ps::Emitter::playing_

Definition at line 639 of file particle_system.cpp.

◆ rng_

bx::RngMwc ps::Emitter::rng_

Definition at line 629 of file particle_system.cpp.

◆ shape_

EmitterShape::Enum ps::Emitter::shape_

Definition at line 625 of file particle_system.cpp.

◆ total_particles_spawned_

uint32_t ps::Emitter::total_particles_spawned_

Definition at line 637 of file particle_system.cpp.


The documentation for this struct was generated from the following file: