Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/blender/blender_particles.cpp
| Show First 20 Lines • Show All 48 Lines • ▼ Show 20 Lines | if (persistent_id[0] >= b_psys.particles.length()) | ||||
| return false; | return false; | ||||
| /* find particle system */ | /* find particle system */ | ||||
| ParticleSystemKey key(b_ob, persistent_id); | ParticleSystemKey key(b_ob, persistent_id); | ||||
| ParticleSystem *psys; | ParticleSystem *psys; | ||||
| bool first_use = !particle_system_map.is_used(key); | bool first_use = !particle_system_map.is_used(key); | ||||
| bool need_update = particle_system_map.add_or_update( | bool need_update = particle_system_map.add_or_update( | ||||
| scene, &psys, b_ob, b_instance.object(), key); | &psys, b_ob, b_instance.object(), key); | ||||
| /* no update needed? */ | /* no update needed? */ | ||||
| if (!need_update && !object->geometry->need_update && !scene->object_manager->need_update) | if (!need_update && !object->geometry->need_update && !scene->object_manager->need_update) | ||||
| return true; | return true; | ||||
| /* first time used in this sync loop? clear and tag update */ | /* first time used in this sync loop? clear and tag update */ | ||||
| if (first_use) { | if (first_use) { | ||||
| psys->particles.clear(); | psys->particles.clear(); | ||||
| Show All 28 Lines | |||||