Blender  V2.59
Classes | Defines | Typedefs | Functions
BKE_effect.h File Reference
#include "DNA_modifier_types.h"

Go to the source code of this file.

Classes

struct  EffectedPoint
struct  GuideEffectorData
struct  EffectorData
struct  EffectorCache

Defines

#define PE_WIND_AS_SPEED   1
#define PE_DYNAMIC_ROTATION   2
#define PE_USE_NORMAL_DATA   4
#define PE_VELOCITY_TO_IMPULSE   1

Typedefs

typedef struct EffectedPoint EffectedPoint
typedef struct GuideEffectorData GuideEffectorData
typedef struct EffectorData EffectorData
typedef struct EffectorCache EffectorCache

Functions

struct EffectorWeightsBKE_add_effector_weights (struct Group *group)
struct PartDeflectobject_add_collision_fields (int type)
void free_effect (struct Effect *eff)
void free_effects (struct ListBase *lb)
struct Effectcopy_effect (struct Effect *eff)
void copy_effects (struct ListBase *lbn, struct ListBase *lb)
void deselectall_eff (struct Object *ob)
struct PartEffgive_parteff (struct Object *ob)
void free_partdeflect (struct PartDeflect *pd)
struct ListBasepdInitEffectors (struct Scene *scene, struct Object *ob_src, struct ParticleSystem *psys_src, struct EffectorWeights *weights)
void pdEndEffectors (struct ListBase **effectors)
void pdDoEffectors (struct ListBase *effectors, struct ListBase *colliders, struct EffectorWeights *weights, struct EffectedPoint *point, float *force, float *impulse)
void pd_point_from_particle (struct ParticleSimulationData *sim, struct ParticleData *pa, struct ParticleKey *state, struct EffectedPoint *point)
void pd_point_from_loc (struct Scene *scene, float *loc, float *vel, int index, struct EffectedPoint *point)
void pd_point_from_soft (struct Scene *scene, float *loc, float *vel, int index, struct EffectedPoint *point)
float effector_falloff (struct EffectorCache *eff, struct EffectorData *efd, struct EffectedPoint *point, struct EffectorWeights *weights)
int closest_point_on_surface (struct SurfaceModifierData *surmd, float *co, float *surface_co, float *surface_nor, float *surface_vel)
int get_effector_data (struct EffectorCache *eff, struct EffectorData *efd, struct EffectedPoint *point, int real_velocity)

Detailed Description

Since:
March 2001
Author:
nzc

Definition in file BKE_effect.h.


Define Documentation

#define PE_DYNAMIC_ROTATION   2

Definition at line 143 of file BKE_effect.h.

#define PE_USE_NORMAL_DATA   4

Definition at line 144 of file BKE_effect.h.

Referenced by get_effector_data(), and precalculate_effector().

#define PE_VELOCITY_TO_IMPULSE   1

Definition at line 147 of file BKE_effect.h.

Referenced by pdDoEffectors().

#define PE_WIND_AS_SPEED   1

Definition at line 142 of file BKE_effect.h.

Referenced by pd_point_from_soft(), and pdDoEffectors().


Typedef Documentation

typedef struct EffectedPoint EffectedPoint
typedef struct EffectorCache EffectorCache
typedef struct EffectorData EffectorData

Function Documentation

struct EffectorWeights* BKE_add_effector_weights ( struct Group group) [read]
int closest_point_on_surface ( struct SurfaceModifierData surmd,
float *  co,
float *  surface_co,
float *  surface_nor,
float *  surface_vel 
)
struct Effect* copy_effect ( struct Effect eff) [read]
void copy_effects ( struct ListBase lbn,
struct ListBase lb 
)
void deselectall_eff ( struct Object ob)
float effector_falloff ( struct EffectorCache eff,
struct EffectorData efd,
struct EffectedPoint point,
struct EffectorWeights weights 
)
void free_effect ( struct Effect eff)

Definition at line 177 of file effect.c.

References EFF_PARTICLE, PartEff::keys, MEM_freeN(), and Effect::type.

Referenced by free_effects().

void free_effects ( struct ListBase lb)

Definition at line 189 of file effect.c.

References BLI_remlink(), ListBase::first, and free_effect().

Referenced by do_versions().

void free_partdeflect ( struct PartDeflect pd)

Definition at line 202 of file effect.c.

References Tex::id, MEM_freeN(), PartDeflect::rng, rng_free(), PartDeflect::tex, and ID::us.

Referenced by free_object(), and psys_free_settings().

int get_effector_data ( struct EffectorCache eff,
struct EffectorData efd,
struct EffectedPoint point,
int  real_velocity 
)
struct PartEff* give_parteff ( struct Object ob) [read]

Definition at line 165 of file effect.c.

References EFF_PARTICLE, Object::effect, ListBase::first, PartEff::next, NULL, and PartEff::type.

Referenced by do_versions(), and expand_object().

struct PartDeflect* object_add_collision_fields ( int  type) [read]
void pd_point_from_loc ( struct Scene scene,
float *  loc,
float *  vel,
int  index,
struct EffectedPoint point 
)
void pd_point_from_particle ( struct ParticleSimulationData sim,
struct ParticleData pa,
struct ParticleKey state,
struct EffectedPoint point 
)
void pd_point_from_soft ( struct Scene scene,
float *  loc,
float *  vel,
int  index,
struct EffectedPoint point 
)
void pdDoEffectors ( struct ListBase effectors,
struct ListBase colliders,
struct EffectorWeights weights,
struct EffectedPoint point,
float *  force,
float *  impulse 
)
void pdEndEffectors ( struct ListBase **  effectors)
struct ListBase* pdInitEffectors ( struct Scene scene,
struct Object ob_src,
struct ParticleSystem psys_src,
struct EffectorWeights weights 
) [read]