diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2018-11-28 18:23:39 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2018-11-28 18:25:15 +0300 |
commit | 6fd5f95ca111543ccd37da118551a2b4d94dfdb7 (patch) | |
tree | e2b4c61bca3d7178075a498b3bbfad37322570e2 /intern | |
parent | e392e0335431346eebd3d1e7cc330cd6845bdeb3 (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.cpp | 7 |
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); |