[Bf-blender-cvs] [a9b82d5d793] blender2.8: Multires: Fix wrong creation of multires mesh

Sergey Sharybin noreply at git.blender.org
Fri Aug 17 10:57:59 CEST 2018


Commit: a9b82d5d7934b554f46668260fd9bd647e6aeb0b
Author: Sergey Sharybin
Date:   Thu Aug 16 17:00:24 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBa9b82d5d7934b554f46668260fd9bd647e6aeb0b

Multires: Fix wrong creation of multires mesh

Should use evaluated object to query deformed mesh from.

===================================================================

M	source/blender/blenkernel/intern/multires.c

===================================================================

diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c
index 28ce2a1e1c0..995c8a12ebe 100644
--- a/source/blender/blenkernel/intern/multires.c
+++ b/source/blender/blenkernel/intern/multires.c
@@ -64,6 +64,8 @@
 
 #include "CCGSubSurf.h"
 
+#include "DEG_depsgraph_query.h"
+
 #include <math.h>
 #include <string.h>
 
@@ -300,10 +302,11 @@ Mesh *get_multires_mesh(
         MultiresModifierData *mmd,
         Object *ob)
 {
-	Mesh *deformed_mesh = mesh_get_eval_deform(depsgraph, scene, ob, CD_MASK_BAREMESH);
+	Object *ob_eval = DEG_get_evaluated_object(depsgraph, ob);
+	Mesh *deformed_mesh = mesh_get_eval_deform(depsgraph, scene, ob_eval, CD_MASK_BAREMESH);
 	ModifierEvalContext modifier_ctx = {
 	        .depsgraph = depsgraph,
-	        .object = ob,
+	        .object = ob_eval,
 	        .flag = MOD_APPLY_USECACHE | MOD_APPLY_IGNORE_SIMPLIFY};
 	Mesh *result = modifier_applyModifier(&mmd->modifier, &modifier_ctx, deformed_mesh);
 	if (result == deformed_mesh) {



More information about the Bf-blender-cvs mailing list