Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/physics/particle_edit.c
| Show First 20 Lines • Show All 334 Lines • ▼ Show 20 Lines | else if (pset->edittype == PE_TYPE_CLOTH && pid->type == PTCACHE_TYPE_CLOTH) { | ||||
| edit = pid->cache->edit; | edit = pid->cache->edit; | ||||
| break; | break; | ||||
| } | } | ||||
| } | } | ||||
| /* Don't consider inactive or render dependency graphs, since they might be evaluated for a | /* Don't consider inactive or render dependency graphs, since they might be evaluated for a | ||||
| * different number of children. or have different pointer to evaluated particle system or | * different number of children. or have different pointer to evaluated particle system or | ||||
| * modifier which will also cause troubles. */ | * modifier which will also cause troubles. */ | ||||
| if (edit && DEG_is_active(depsgraph)) { | if (edit && (DEG_is_active(depsgraph) || !create)) { | ||||
| edit->pid = *pid; | edit->pid = *pid; | ||||
| if (edit->flags & PT_CACHE_EDIT_UPDATE_PARTICLE_FROM_EVAL) { | if (edit->flags & PT_CACHE_EDIT_UPDATE_PARTICLE_FROM_EVAL) { | ||||
| if (edit->psys != NULL && edit->psys_eval != NULL) { | if (edit->psys != NULL && edit->psys_eval != NULL) { | ||||
| psys_copy_particles(edit->psys, edit->psys_eval); | psys_copy_particles(edit->psys, edit->psys_eval); | ||||
| pe_update_hair_particle_edit_pointers(edit); | pe_update_hair_particle_edit_pointers(edit); | ||||
| } | } | ||||
| edit->flags &= ~PT_CACHE_EDIT_UPDATE_PARTICLE_FROM_EVAL; | edit->flags &= ~PT_CACHE_EDIT_UPDATE_PARTICLE_FROM_EVAL; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 5,182 Lines • Show Last 20 Lines | |||||