Merge branch 'master' into blender2.8
[blender.git] / source / blender / makesdna / DNA_particle_types.h
index ea7905eb2adc7707425158370ec079b76b5f153e..a7be2e37c4b5f0880de9597287f416e18055b6c4 100644 (file)
@@ -263,6 +263,11 @@ typedef struct ParticleSettings {
 
        short pad5;
        int recalc;
+
+       float twist;
+       float pad6;
+       struct CurveMapping *twistcurve;
+       void *pad7;
 } ParticleSettings;
 
 typedef struct ParticleSystem {
@@ -305,7 +310,8 @@ typedef struct ParticleSystem {
        char bb_uvname[3][64];                                  /* billboard uv name, MAX_CUSTOMDATA_LAYER_NAME */
 
        /* if you change these remember to update array lengths to PSYS_TOT_VG! */
-       short vgroup[12], vg_neg, rt3;                  /* vertex groups, 0==disable, 1==starting index */
+       short vgroup[13], vg_neg, rt3;                  /* vertex groups, 0==disable, 1==starting index */
+       char pad[6];
 
        /* temporary storage during render */
        struct ParticleRenderData *renderdata;
@@ -439,6 +445,7 @@ typedef enum eParticleChildFlag {
        PART_CHILD_USE_CLUMP_NOISE  = (1<<0),
        PART_CHILD_USE_CLUMP_CURVE  = (1<<1),
        PART_CHILD_USE_ROUGH_CURVE  = (1<<2),
+       PART_CHILD_USE_TWIST_CURVE  = (1<<3),
 } eParticleChildFlag;
 
 /* part->draw_col */
@@ -566,7 +573,7 @@ typedef enum eParticleChildFlag {
 #define PART_DUPLIW_CURRENT    1
 
 /* psys->vg */
-#define PSYS_TOT_VG                    12
+#define PSYS_TOT_VG                    13
 
 #define PSYS_VG_DENSITY                0
 #define PSYS_VG_VEL                    1
@@ -580,6 +587,7 @@ typedef enum eParticleChildFlag {
 #define PSYS_VG_TAN                    9
 #define PSYS_VG_ROT                    10
 #define PSYS_VG_EFFECTOR       11
+#define PSYS_VG_TWIST  12
 
 /* ParticleTarget->flag */
 #define PTARGET_CURRENT                1
@@ -611,7 +619,8 @@ typedef enum eParticleTextureInfluence {
        PAMAP_KINK_AMP  = (1<<12),
        PAMAP_ROUGH             = (1<<9),
        PAMAP_LENGTH    = (1<<4),
-       PAMAP_CHILD             = (PAMAP_CLUMP | PAMAP_KINK_FREQ | PAMAP_KINK_AMP | PAMAP_ROUGH | PAMAP_LENGTH),
+       PAMAP_TWIST     = (1<<13),
+       PAMAP_CHILD             = (PAMAP_CLUMP | PAMAP_KINK_FREQ | PAMAP_KINK_AMP | PAMAP_ROUGH | PAMAP_LENGTH | PAMAP_TWIST),
 } eParticleTextureInfluence;
 
 #endif