Blender V5.0
particle_private.h File Reference
#include "BKE_particle.h"

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, const 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, const struct CurveMapping *clumpcurve)
void do_child_modifiers (const ParticleChildModifierContext *modifier_ctx, float mat[4][4], ParticleKey *state, float t)

Typedef Documentation

◆ ParticleChildModifierContext

typedef struct ParticleChildModifierContext 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 796 of file particle_child.cc.

References ParticleSystem::child, ParticleSettings::child_flag, ParticleSettings::childtype, ParticleTexture::clump, ParticleSettings::clump_noise_size, ParticleSettings::clumpcurve, ParticleThreadContext::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, i, ParticleSettings::kink, ParticleSettings::kink_amp, ParticleTexture::kink_amp, ParticleSettings::kink_amp_clump, ParticleSettings::kink_axis, ParticleSettings::kink_flat, ParticleSettings::kink_freq, ParticleTexture::kink_freq, ParticleSettings::kink_shape, ParticleSimulationData::ob, 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, ParticleSettings::rough1, ParticleTexture::rough1, ParticleSettings::rough1_size, ParticleSettings::rough2, ParticleTexture::rough2, ParticleSettings::rough2_size, ParticleSettings::rough2_thres, ParticleSettings::rough_end, ParticleSettings::rough_end_shape, ParticleSettings::roughcurve, ParticleThreadContext::roughcurve, ParticleTexture::roughe, ParticleChildModifierContext::sim, state, sub_v3_v3v3(), 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,
const struct CurveMapping * clumpcurve )

References state.

◆ 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,
const float obmat[4][4],
int smooth_start )