Nebula
Loading...
Searching...
No Matches
particlejob.cc File Reference
#include "jobs/jobs.h"
#include "math/vec4.h"
#include "particles/particle.h"

Namespaces

namespace  Particles
 Particle context controls playing and enabling/disabling of particle emitters inside a model.
 

Macros

#define ASSERT_POINT(p)
 
#define ASSERT_VECTOR(v)
 

Functions

const float * Particles::LookupEnvelopeSamples (const float sampleBuffer[ParticleSystemNumEnvelopeSamples *EmitterAttrs::NumEnvelopeAttrs], IndexT sampleIndex)
 NOTE: JobStepAndVlist does the same as JobStep, but it also generates the vertex list.
 
void Particles::UpdateBbox (const vec4 &v, vec4 &min, vec4 &max)
 update bounding box (min, max) with vector v
 
void Particles::ParticleUpdateAge (const float stepTime, const Particle &in, Particle &out)
 update the age of one particle
 
void Particles::ParticleStep (const ParticleJobUniformData *perSystemUniforms, const float stepTime, const Particle &in, Particle &out, ParticleJobSliceOutputData *sliceOutput)
 integrate the particle state with a given time-step
 
void Particles::JobStep (const ParticleJobUniformData *perSystemUniforms, const float stepTime, unsigned int numParticles, const Particle *particles_input, Particle *particles_output, ParticleJobSliceOutputData *sliceOutput)
 update particle system step
 

Macro Definition Documentation

◆ ASSERT_POINT

#define ASSERT_POINT ( p)
Value:
{ n_assert(p.w > 0.995f); n_assert(p.w < 1.005f) }
#define n_assert(exp)
Definition debug.h:50

◆ ASSERT_VECTOR

#define ASSERT_VECTOR ( v)
Value:
{ n_assert(v.w > -0.005f); n_assert(v.w < 0.005f) }