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
path: root/intern
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2018-11-28 18:23:39 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2018-11-28 18:25:15 +0300
commit6fd5f95ca111543ccd37da118551a2b4d94dfdb7 (patch)
treee2b4c61bca3d7178075a498b3bbfad37322570e2 /intern
parente392e0335431346eebd3d1e7cc330cd6845bdeb3 (diff)
Fix (unreported) Cycles not rendering correctly modified curves/surfaces/texts.
Meshes from evaluated objects may already have modifiers applied, but that's not the case for curves, we need to do that when converting them to meshes.
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/blender/blender_mesh.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/intern/cycles/blender/blender_mesh.cpp b/intern/cycles/blender/blender_mesh.cpp
index b97c250adf6..b27de775c54 100644
--- a/intern/cycles/blender/blender_mesh.cpp
+++ b/intern/cycles/blender/blender_mesh.cpp
@@ -1061,9 +1061,12 @@ Mesh *BlenderSync::sync_mesh(BL::Depsgraph& b_depsgraph,
* updating meshes here will end up having derived mesh referencing
* freed data from the blender side.
*/
- if(preview && b_ob.type() != BL::Object::type_MESH)
+ if(preview && b_ob.type() != BL::Object::type_MESH) {
b_ob.update_from_editmode(b_data);
+ }
+ /* For some reason, meshes do not need this... */
+ bool apply_modifiers = (b_ob.type() != BL::Object::type_MESH);
bool need_undeformed = mesh->need_attribute(scene, ATTR_STD_GENERATED);
mesh->subdivision_type = object_subdivision_type(b_ob, preview, experimental);
@@ -1078,7 +1081,7 @@ Mesh *BlenderSync::sync_mesh(BL::Depsgraph& b_depsgraph,
BL::Mesh b_mesh = object_to_mesh(b_data,
b_ob,
b_depsgraph,
- false,
+ apply_modifiers,
need_undeformed,
mesh->subdivision_type);