Changeset View
Changeset View
Standalone View
Standalone View
source/blender/physics/intern/BPH_mass_spring.cpp
| Context not available. | |||||
| scaling = parms->bending + s->stiffness * fabsf(parms->max_bend - parms->bending); | scaling = parms->bending + s->stiffness * fabsf(parms->max_bend - parms->bending); | ||||
| kb = scaling / (20.0f * (parms->avg_spring_len + FLT_EPSILON)); | kb = scaling / (20.0f * (parms->avg_spring_len + FLT_EPSILON)); | ||||
| scaling = parms->bending_damping; | // Fix for [#45084] for cloth stiffness must have cb proportional to kb | ||||
| cb = scaling / (20.0f * (parms->avg_spring_len + FLT_EPSILON)); | cb = kb * parms->bending_damping; | ||||
| BPH_mass_spring_force_spring_bending(data, s->ij, s->kl, s->restlen, kb, cb, s->f, s->dfdx, s->dfdv); | BPH_mass_spring_force_spring_bending(data, s->ij, s->kl, s->restlen, kb, cb, s->f, s->dfdx, s->dfdv); | ||||
| #endif | #endif | ||||
| Context not available. | |||||
| scaling = s->stiffness * parms->bending; | scaling = s->stiffness * parms->bending; | ||||
| kb = scaling / (20.0f * (parms->avg_spring_len + FLT_EPSILON)); | kb = scaling / (20.0f * (parms->avg_spring_len + FLT_EPSILON)); | ||||
| scaling = parms->bending_damping; | // Fix for [#45084] for cloth stiffness must have cb proportional to kb | ||||
| cb = scaling / (20.0f * (parms->avg_spring_len + FLT_EPSILON)); | cb = kb * parms->bending_damping; | ||||
| /* XXX assuming same restlen for ij and jk segments here, this can be done correctly for hair later */ | /* XXX assuming same restlen for ij and jk segments here, this can be done correctly for hair later */ | ||||
| BPH_mass_spring_force_spring_bending_angular(data, s->ij, s->kl, s->mn, s->target, kb, cb); | BPH_mass_spring_force_spring_bending_angular(data, s->ij, s->kl, s->mn, s->target, kb, cb); | ||||
| Context not available. | |||||