~ubuntu-branches/ubuntu/trusty/blender/trusty

« back to all changes in this revision

Viewing changes to source/blender/blenkernel/BKE_effect.h

  • Committer: Package Import Robot
  • Author(s): Jeremy Bicha
  • Date: 2013-03-06 12:08:47 UTC
  • mfrom: (1.5.1) (14.1.8 experimental)
  • Revision ID: package-import@ubuntu.com-20130306120847-frjfaryb2zrotwcg
Tags: 2.66a-1ubuntu1
* Resynchronize with Debian (LP: #1076930, #1089256, #1052743, #999024,
  #1122888, #1147084)
* debian/control:
  - Lower build-depends on libavcodec-dev since we're not
    doing the libav9 transition in Ubuntu yet

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
typedef struct EffectedPoint {
53
53
        float *loc;
54
54
        float *vel;
55
 
        float *ave;     /* angular velocity for particles with dynamic rotation */
 
55
        float *ave;  /* angular velocity for particles with dynamic rotation */
56
56
        float *rot; /* rotation quaternion for particles with dynamic rotation */
57
57
        float vel_to_frame;
58
58
        float vel_to_sec;
63
63
        unsigned int flag;
64
64
        int index;
65
65
 
66
 
        struct ParticleSystem *psys;    /* particle system the point belongs to */
 
66
        struct ParticleSystem *psys;  /* particle system the point belongs to */
67
67
} EffectedPoint;
68
68
 
69
69
typedef struct GuideEffectorData {
86
86
        /* only for vortex effector with surface falloff */
87
87
        float nor2[3], vec_to_point2[3];
88
88
 
89
 
        int *index;     /* point index */
 
89
        int *index; /* point index */
90
90
} EffectorData;
91
91
 
92
92
/* used for calculating the effector force */
109
109
        int flag;
110
110
} EffectorCache;
111
111
 
112
 
void                    free_partdeflect(struct PartDeflect *pd);
 
112
void            free_partdeflect(struct PartDeflect *pd);
113
113
struct ListBase *pdInitEffectors(struct Scene *scene, struct Object *ob_src, struct ParticleSystem *psys_src, struct EffectorWeights *weights);
114
 
void                    pdEndEffectors(struct ListBase **effectors);
115
 
void                    pdDoEffectors(struct ListBase *effectors, struct ListBase *colliders, struct EffectorWeights *weights, struct EffectedPoint *point, float *force, float *impulse);
 
114
void            pdEndEffectors(struct ListBase **effectors);
 
115
void            pdDoEffectors(struct ListBase *effectors, struct ListBase *colliders, struct EffectorWeights *weights, struct EffectedPoint *point, float *force, float *impulse);
116
116
 
117
117
void pd_point_from_particle(struct ParticleSimulationData *sim, struct ParticleData *pa, struct ParticleKey *state, struct EffectedPoint *point);
118
118
void pd_point_from_loc(struct Scene *scene, float *loc, float *vel, int index, struct EffectedPoint *point);
120
120
 
121
121
/* needed for boids */
122
122
float effector_falloff(struct EffectorCache *eff, struct EffectorData *efd, struct EffectedPoint *point, struct EffectorWeights *weights);
123
 
int closest_point_on_surface(SurfaceModifierData *surmd, const float co[3], float surface_co[3], float surface_nor[3], float surface_vel[3]);
 
123
int closest_point_on_surface(SurfaceModifierData * surmd, const float co[3], float surface_co[3], float surface_nor[3], float surface_vel[3]);
124
124
int get_effector_data(struct EffectorCache *eff, struct EffectorData *efd, struct EffectedPoint *point, int real_velocity);
125
125
 
126
126
/* required for particle_system.c */
128
128
//float effector_falloff(struct EffectorData *eff, struct EffectorPoint *point, struct EffectorWeights *weights);
129
129
 
130
130
/* EffectedPoint->flag */
131
 
#define PE_WIND_AS_SPEED                1
132
 
#define PE_DYNAMIC_ROTATION             2
133
 
#define PE_USE_NORMAL_DATA              4
 
131
#define PE_WIND_AS_SPEED        1
 
132
#define PE_DYNAMIC_ROTATION     2
 
133
#define PE_USE_NORMAL_DATA      4
134
134
 
135
135
/* EffectorData->flag */
136
 
#define PE_VELOCITY_TO_IMPULSE  1
 
136
#define PE_VELOCITY_TO_IMPULSE  1
137
137
 
138
138
 
139
139
#endif