From 84437bb5e9342e67f448e26adb0c4b0811f3ef5c Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Mon, 2 Jan 2012 19:44:13 +0000 Subject: Fix #29695: cycles particle emitter not being properly hidden. --- intern/cycles/blender/blender_object.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'intern') diff --git a/intern/cycles/blender/blender_object.cpp b/intern/cycles/blender/blender_object.cpp index 608c5fda5ac..caf5b0a99b1 100644 --- a/intern/cycles/blender/blender_object.cpp +++ b/intern/cycles/blender/blender_object.cpp @@ -234,13 +234,20 @@ void BlenderSync::sync_objects(BL::SpaceView3D b_v3d) object_free_duplilist(*b_ob); - /* check if we should render duplicator */ hide = true; - BL::Object::particle_systems_iterator b_psys; + } + + /* check if we should render or hide particle emitter */ + BL::Object::particle_systems_iterator b_psys; + bool render_emitter = false; - for(b_ob->particle_systems.begin(b_psys); b_psys != b_ob->particle_systems.end(); ++b_psys) - if(b_psys->settings().use_render_emitter()) - hide = false; + for(b_ob->particle_systems.begin(b_psys); b_psys != b_ob->particle_systems.end(); ++b_psys) { + if(b_psys->settings().use_render_emitter()) { + hide = false; + render_emitter = true; + } + else if(!render_emitter) + hide = true; } if(!hide) { -- cgit v1.2.3