diff options
author | Janne Karhu <jhkarh@gmail.com> | 2011-01-07 14:24:34 +0300 |
---|---|---|
committer | Janne Karhu <jhkarh@gmail.com> | 2011-01-07 14:24:34 +0300 |
commit | 29efbf8a04c66a6c0e71c63140185a603d4e684b (patch) | |
tree | 49905b40499e2bde748e52d7aa735c9dd98e9e97 /source/blender/makesdna/DNA_particle_types.h | |
parent | 7ad97b04b7faf4640d953b8c6066b88b9154ba89 (diff) |
New hair child options:
* Renamed children to "simple" and "interpolated" as this is
easier to explain and more descriptive than "from particles"
and "from faces".
* Also shuffled the child ui around a bit to make it clearer.
* Child seed parameter allows to change the seed for children
independent of the main seed value.
* Long hair mode for interpolated children:
- Making even haircuts was impossible before as the child
strand lengths were even, but their root coordinates were
not similar in relation to the parent strands.
- The "long hair" option uses the tips of the parent strands
to calculate the child strand tips.
* Hair parting options:
- Hair parting can now be calculated dynamically on the fly
when in 2.49 there was a cumbersome way of using emitter mesh
seams to define parting lines.
- For long hair parting can be created by a tip distance/root
distance threshold. For example setting the minimum threshold
to 2.0 creates partings between children belonging to parents
with tip distance of three times the root distance
((1+2)*root distance).
- For short hair the parting thresholds are used as angles
between the root directions.
* New kink parameters:
- Kink flatness calculates kink into a shape that would have
been achieved with an actual curling iron.
- Kink amplitude clump determines how much the main clump value
effects the kink amplitude.
- The beginning of kink is now smoothed to make the hair look
more natural close to the roots.
* Some bugs fixed along the way too:
- Child parent's were not determined correctly in some cases.
- Children didn't always look correct in particle mode.
- Changing child parameters caused actual particles to be
recalculated.
* Also cleaned up some deprecated code.
All in all there should be no real changes to how old files look
(except perhaps a bit better!), but the new options should make
hair/fur creation a bit more enjoyable. I'll try to make a video
demonstrating the new stuff shortly.
Diffstat (limited to 'source/blender/makesdna/DNA_particle_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_particle_types.h | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/source/blender/makesdna/DNA_particle_types.h b/source/blender/makesdna/DNA_particle_types.h index e336d3056ea..cbc9e0f1c29 100644 --- a/source/blender/makesdna/DNA_particle_types.h +++ b/source/blender/makesdna/DNA_particle_types.h @@ -163,7 +163,7 @@ typedef struct ParticleSettings { /* initial velocity factors */ float normfac, obfac, randfac, partfac, tanfac, tanphase, reactfac; - float ob_vel[3], rt; + float ob_vel[3]; float avefac, phasefac, randrotfac, randphasefac; /* physical properties */ float mass, size, randsize, reactshape; @@ -178,13 +178,17 @@ typedef struct ParticleSettings { /* clumping */ float clumpfac, clumppow; /* kink */ - float kink_amp, kink_freq, kink_shape; + float kink_amp, kink_freq, kink_shape, kink_flat; + float kink_amp_clump; /* rough */ float rough1, rough1_size; float rough2, rough2_size, rough2_thres; float rough_end, rough_end_shape; /* length */ float clength, clength_thres; + /* parting */ + float parting_fac; + float parting_min, parting_max; /* branching */ float branch_thres; /* drawing stuff */ @@ -232,7 +236,7 @@ typedef struct ParticleSystem{ /* note, make sure all (runtime) are NULL's in float imat[4][4]; /* used for duplicators */ float cfra, tree_frame; - int seed, rt; + int seed, child_seed; int flag, totpart, totchild, totcached, totchildcache; short recalc, target_psys, totkeyed, bakespace; @@ -294,18 +298,18 @@ typedef struct ParticleSystem{ /* note, make sure all (runtime) are NULL's in #define PART_BOIDS_2D (1<<19) -#define PART_BRANCHING (1<<20) -#define PART_ANIM_BRANCHING (1<<21) -#define PART_SYMM_BRANCHING (1<<24) +//#define PART_BRANCHING (1<<20) +//#define PART_ANIM_BRANCHING (1<<21) +//#define PART_SYMM_BRANCHING (1<<24) #define PART_HAIR_BSPLINE 1024 #define PART_GRID_INVERT (1<<26) -#define PART_CHILD_EFFECT (1<<27) -#define PART_CHILD_SEAMS (1<<28) -#define PART_CHILD_RENDER (1<<29) -#define PART_CHILD_GUIDE (1<<30) +#define PART_CHILD_EFFECT (1<<27) +#define PART_CHILD_LONG_HAIR (1<<28) +#define PART_CHILD_RENDER (1<<29) +#define PART_CHILD_GUIDE (1<<30) #define PART_SELF_EFFECT (1<<22) |