Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2013-11-27 20:14:53 +0400
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2013-11-27 20:17:25 +0400
commitf67dda689349b093ce1d11c2cba5ebb48dba8c45 (patch)
tree599af8fd4026ddba9b267121bdef2365b5bfd0a0 /intern/cycles/blender/blender_object.cpp
parent12b4a67e9598be51a4403de1777cad51dc94067a (diff)
Fix T37159: cycles rendering particle emitter mesh incorrectly when using non-hair particles.
Diffstat (limited to 'intern/cycles/blender/blender_object.cpp')
-rw-r--r--intern/cycles/blender/blender_object.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/intern/cycles/blender/blender_object.cpp b/intern/cycles/blender/blender_object.cpp
index 4b93a5b614f..849ca963de6 100644
--- a/intern/cycles/blender/blender_object.cpp
+++ b/intern/cycles/blender/blender_object.cpp
@@ -357,6 +357,7 @@ static bool object_render_hide(BL::Object b_ob, bool top_level, bool parent_hide
bool hair_present = false;
bool show_emitter = false;
+ bool hide_emitter = false;
bool hide_as_dupli_parent = false;
bool hide_as_dupli_child_original = false;
@@ -367,8 +368,13 @@ static bool object_render_hide(BL::Object b_ob, bool top_level, bool parent_hide
if(b_psys->settings().use_render_emitter())
show_emitter = true;
+ else
+ hide_emitter = true;
}
+ if(show_emitter)
+ hide_emitter = false;
+
/* duplicators hidden by default, except dupliframes which duplicate self */
if(b_ob.is_duplicator())
if(top_level || b_ob.dupli_type() != BL::Object::dupli_type_FRAMES)
@@ -386,11 +392,11 @@ static bool object_render_hide(BL::Object b_ob, bool top_level, bool parent_hide
}
else if(hair_present) {
hide_triangles = true;
- return hide_as_dupli_child_original;
+ return (hide_emitter || hide_as_dupli_child_original);
}
else {
hide_triangles = false;
- return (hide_as_dupli_parent || hide_as_dupli_child_original);
+ return (hide_emitter || hide_as_dupli_parent || hide_as_dupli_child_original);
}
}