Blender  V3.3
Classes | Typedefs | Functions
particle_private.h File Reference

Go to the source code of this file.

Classes

struct  ParticleChildModifierContext
 

Typedefs

typedef struct ParticleChildModifierContext ParticleChildModifierContext
 

Functions

void do_kink (ParticleKey *state, const float par_co[3], const float par_vel[3], const float par_rot[4], float time, float freq, float shape, float amplitude, float flat, short type, short axis, float obmat[4][4], int smooth_start)
 
float do_clump (ParticleKey *state, const float par_co[3], float time, const float orco_offset[3], float clumpfac, float clumppow, float pa_clump, bool use_clump_noise, float clump_noise_size, struct CurveMapping *clumpcurve)
 
void do_child_modifiers (const ParticleChildModifierContext *modifier_ctx, float mat[4][4], ParticleKey *state, float t)
 

Typedef Documentation

◆ ParticleChildModifierContext

Function Documentation

◆ do_child_modifiers()

void do_child_modifiers ( const ParticleChildModifierContext modifier_ctx,
float  mat[4][4],
ParticleKey state,
float  t 
)

Definition at line 798 of file particle_child.c.

References ParticleSystem::child, ParticleSettings::child_flag, ParticleSettings::childtype, ParticleTexture::clump, ParticleSettings::clump_noise_size, ParticleThreadContext::clumpcurve, ParticleSettings::clumpcurve, ParticleSettings::clumpfac, ParticleSettings::clumppow, ParticleChildModifierContext::cpa, ParticleSimulationData::depsgraph, do_clump(), do_guides(), do_kink(), do_rough(), do_rough_curve(), do_rough_end(), do_twist(), ParticleSystem::effectors, ParticleSettings::flag, ParticleSettings::kink, ParticleTexture::kink_amp, ParticleSettings::kink_amp, ParticleSettings::kink_amp_clump, ParticleSettings::kink_axis, ParticleSettings::kink_flat, ParticleTexture::kink_freq, ParticleSettings::kink_freq, ParticleSettings::kink_shape, NULL, ParticleSimulationData::ob, Object::obmat, ParticleChildModifierContext::orco, ParticleChildModifierContext::par_co, ParticleChildModifierContext::par_orco, ParticleChildModifierContext::par_rot, ParticleChildModifierContext::par_vel, ChildParticle::parent, ParticleSystem::part, PART_CHILD_EFFECT, PART_CHILD_FACES, PART_CHILD_USE_CLUMP_CURVE, PART_CHILD_USE_CLUMP_NOISE, PART_CHILD_USE_ROUGH_CURVE, ParticleSimulationData::psys, psys_frand_vec(), ParticleChildModifierContext::ptex, ParticleTexture::rough1, ParticleSettings::rough1, ParticleSettings::rough1_size, ParticleTexture::rough2, ParticleSettings::rough2, ParticleSettings::rough2_size, ParticleSettings::rough2_thres, ParticleSettings::rough_end, ParticleSettings::rough_end_shape, ParticleThreadContext::roughcurve, ParticleSettings::roughcurve, ParticleTexture::roughe, ParticleChildModifierContext::sim, state, sub_v3_v3v3(), t, and ParticleChildModifierContext::thread_ctx.

Referenced by do_kink_spiral(), psys_apply_child_modifiers(), psys_get_particle_on_path(), and psys_get_particle_state().

◆ do_clump()

float do_clump ( ParticleKey state,
const float  par_co[3],
float  time,
const float  orco_offset[3],
float  clumpfac,
float  clumppow,
float  pa_clump,
bool  use_clump_noise,
float  clump_noise_size,
struct CurveMapping clumpcurve 
)

◆ do_kink()

void do_kink ( ParticleKey state,
const float  par_co[3],
const float  par_vel[3],
const float  par_rot[4],
float  time,
float  freq,
float  shape,
float  amplitude,
float  flat,
short  type,
short  axis,
float  obmat[4][4],
int  smooth_start 
)