From 7d110c2923c1dcd458c1a772b486c3c17caa5e65 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Thu, 10 Nov 2011 16:02:46 +0000 Subject: Cycles: fix missing particle panels and show emitter option not being respected. --- intern/cycles/blender/addon/ui.py | 17 ++++++++++++++++- intern/cycles/blender/blender_object.cpp | 11 ++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) (limited to 'intern') diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py index 01b358869ec..7c7d4c81b89 100644 --- a/intern/cycles/blender/addon/ui.py +++ b/intern/cycles/blender/addon/ui.py @@ -735,7 +735,22 @@ def get_panels(): bpy.types.TEXTURE_PT_distortednoise, bpy.types.TEXTURE_PT_voxeldata, bpy.types.TEXTURE_PT_pointdensity, - bpy.types.TEXTURE_PT_pointdensity_turbulence] + bpy.types.TEXTURE_PT_pointdensity_turbulence, + bpy.types.PARTICLE_PT_context_particles, + bpy.types.PARTICLE_PT_emission, + bpy.types.PARTICLE_PT_hair_dynamics, + bpy.types.PARTICLE_PT_cache, + bpy.types.PARTICLE_PT_velocity, + bpy.types.PARTICLE_PT_rotation, + bpy.types.PARTICLE_PT_physics, + bpy.types.PARTICLE_PT_boidbrain, + bpy.types.PARTICLE_PT_render, + bpy.types.PARTICLE_PT_draw, + bpy.types.PARTICLE_PT_children, + bpy.types.PARTICLE_PT_field_weights, + bpy.types.PARTICLE_PT_force_fields, + bpy.types.PARTICLE_PT_vertexgroups, + bpy.types.PARTICLE_PT_custom_props] def register(): bpy.types.RENDER_PT_render.append(draw_device) diff --git a/intern/cycles/blender/blender_object.cpp b/intern/cycles/blender/blender_object.cpp index 1095a3ee026..0edac820e94 100644 --- a/intern/cycles/blender/blender_object.cpp +++ b/intern/cycles/blender/blender_object.cpp @@ -229,8 +229,17 @@ 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; + + 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; } - else { + + if(!hide) { /* object itself */ Transform tfm = get_transform(b_ob->matrix_world()); sync_object(*b_ob, 0, *b_ob, tfm, visibility); -- cgit v1.2.3