Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenkernel/intern/particle_system.c
| Show First 20 Lines • Show All 4,848 Lines • ▼ Show 20 Lines | else if (hair_needs_recalc(psys)) { | ||||
| if ((part->flag & PART_HAIR_REGROW) == 0) { | if ((part->flag & PART_HAIR_REGROW) == 0) { | ||||
| part_local = particle_settings_localize(part); | part_local = particle_settings_localize(part); | ||||
| psys->part = part_local; | psys->part = part_local; | ||||
| } | } | ||||
| for (i = 0; i <= part->hair_step; i++) { | for (i = 0; i <= part->hair_step; i++) { | ||||
| hcfra = 100.0f * (float)i / (float)psys->part->hair_step; | hcfra = 100.0f * (float)i / (float)psys->part->hair_step; | ||||
| if ((part->flag & PART_HAIR_REGROW) == 0) { | if ((part->flag & PART_HAIR_REGROW) == 0) { | ||||
| const AnimationEvalContext anim_eval_context = BKE_animsys_eval_context(depsgraph, | |||||
| hcfra); | |||||
| BKE_animsys_evaluate_animdata( | BKE_animsys_evaluate_animdata( | ||||
| &part_local->id, part_local->adt, hcfra, ADT_RECALC_ANIM, false); | &part_local->id, part_local->adt, &anim_eval_context, ADT_RECALC_ANIM, false); | ||||
| } | } | ||||
| system_step(&sim, hcfra, use_render_params); | system_step(&sim, hcfra, use_render_params); | ||||
| psys->cfra = hcfra; | psys->cfra = hcfra; | ||||
| psys->recalc = 0; | psys->recalc = 0; | ||||
| save_hair(&sim, hcfra); | save_hair(&sim, hcfra); | ||||
| } | } | ||||
| if (part_local != part) { | if (part_local != part) { | ||||
| ▲ Show 20 Lines • Show All 167 Lines • Show Last 20 Lines | |||||