Some tweaking of value ranges for hair target density and removed

density factor (already included in grid velocity).

Conflicts:
	source/blender/physics/intern/BPH_mass_spring.cpp
This commit is contained in:
Lukas Tönne 2014-11-15 12:40:34 +01:00
parent 2da21b30ae
commit 52384179f4
3 changed files with 6 additions and 3 deletions

@ -387,13 +387,13 @@ static void rna_def_cloth_sim_settings(BlenderRNA *brna)
prop = RNA_def_property(srna, "density_target", PROP_FLOAT, PROP_NONE);
RNA_def_property_float_sdna(prop, NULL, "density_target");
RNA_def_property_range(prop, 0.0f, 1000000.0f);
RNA_def_property_range(prop, 0.0f, 10000.0f);
RNA_def_property_ui_text(prop, "Target Density", "Maximum density of hair");
RNA_def_property_update(prop, 0, "rna_cloth_update");
prop = RNA_def_property(srna, "density_strength", PROP_FLOAT, PROP_NONE);
RNA_def_property_float_sdna(prop, NULL, "density_strength");
RNA_def_property_range(prop, 0.0f, 1000.0f);
RNA_def_property_range(prop, 0.0f, 1.0f);
RNA_def_property_ui_text(prop, "Target Density Strength", "Influence of target density on the simulation");
RNA_def_property_update(prop, 0, "rna_cloth_update");

@ -672,6 +672,9 @@ static void cloth_continuum_step(ClothModifierData *clmd, float dt)
const float fluid_factor = 0.95f; /* blend between PIC and FLIP methods */
float smoothfac = parms->velocity_smooth;
/* XXX FIXME arbitrary factor!!! this should be based on some intuitive value instead,
* like number of hairs per cell and time decay instead of "strength"
*/
float density_target = parms->density_target;
float density_strength = parms->density_strength;
float gmin[3], gmax[3];

@ -598,7 +598,7 @@ static const float density_threshold = 0.001f; /* cells with density below this
BLI_INLINE float hair_volume_density_divergence(float density, float target_density, float strength)
{
if (density > density_threshold && density > target_density)
return strength * density * logf(target_density / density);
return strength * logf(target_density / density);
else
return 0.0f;
}