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:
-rw-r--r--source/blender/blenkernel/BKE_multires.h5
-rw-r--r--source/blender/blenkernel/intern/multires.c14
-rw-r--r--source/blender/editors/object/object_modifier.c2
3 files changed, 12 insertions, 9 deletions
diff --git a/source/blender/blenkernel/BKE_multires.h b/source/blender/blenkernel/BKE_multires.h
index 08feaec6644..0a547936a39 100644
--- a/source/blender/blenkernel/BKE_multires.h
+++ b/source/blender/blenkernel/BKE_multires.h
@@ -95,8 +95,9 @@ int multiresModifier_reshape(struct Depsgraph *depsgraph, struct Scene *scene, s
struct Object *dst, struct Object *src);
int multiresModifier_reshapeFromDM(struct Depsgraph *depsgraph, struct Scene *scene, struct MultiresModifierData *mmd,
struct Object *ob, struct DerivedMesh *srcdm);
-int multiresModifier_reshapeFromDeformMod(struct Depsgraph *depsgraph, struct Scene *scene, struct MultiresModifierData *mmd,
- struct Object *ob, struct ModifierData *md);
+bool multiresModifier_reshapeFromDeformModifier(
+ struct Depsgraph *depsgraph, struct Scene *scene, struct MultiresModifierData *mmd,
+ struct Object *ob, struct ModifierData *md);
void multires_stitch_grids(struct Object *);
diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c
index ab0327652cd..b4fd93afba1 100644
--- a/source/blender/blenkernel/intern/multires.c
+++ b/source/blender/blenkernel/intern/multires.c
@@ -427,16 +427,18 @@ int multiresModifier_reshape(struct Depsgraph *depsgraph, Scene *scene, Multires
return multiresModifier_reshapeFromDM(depsgraph, scene, mmd, dst, srcdm);
}
-int multiresModifier_reshapeFromDeformMod(struct Depsgraph *depsgraph, Scene *scene, MultiresModifierData *mmd,
- Object *ob, ModifierData *md)
+bool multiresModifier_reshapeFromDeformModifier(
+ struct Depsgraph *depsgraph, Scene *scene, MultiresModifierData *mmd,
+ Object *ob, ModifierData *md)
{
DerivedMesh *dm, *ndm;
- int numVerts, result;
+ int numVerts;
float (*deformedVerts)[3];
const ModifierEvalContext mectx = {depsgraph, ob, 0};
- if (multires_get_level(scene, ob, mmd, false, true) == 0)
- return 0;
+ if (multires_get_level(scene, ob, mmd, false, true) == 0) {
+ return false;
+ }
/* Create DerivedMesh for deformation modifier */
dm = get_multires_dm(depsgraph, scene, mmd, ob);
@@ -453,7 +455,7 @@ int multiresModifier_reshapeFromDeformMod(struct Depsgraph *depsgraph, Scene *sc
dm->release(dm);
/* Reshaping */
- result = multiresModifier_reshapeFromDM(depsgraph, scene, mmd, ob, ndm);
+ bool result = (multiresModifier_reshapeFromDM(depsgraph, scene, mmd, ob, ndm) != 0);
/* Cleanup */
ndm->release(ndm);
diff --git a/source/blender/editors/object/object_modifier.c b/source/blender/editors/object/object_modifier.c
index ad3a8a105e1..93bc59fd852 100644
--- a/source/blender/editors/object/object_modifier.c
+++ b/source/blender/editors/object/object_modifier.c
@@ -605,7 +605,7 @@ static int modifier_apply_obdata(ReportList *reports, Depsgraph *depsgraph, Scen
multires_force_update(ob);
if (mmd && mmd->totlvl && mti->type == eModifierTypeType_OnlyDeform) {
- if (!multiresModifier_reshapeFromDeformMod(depsgraph, scene, mmd, ob, md)) {
+ if (!multiresModifier_reshapeFromDeformModifier(depsgraph, scene, mmd, ob, md)) {
BKE_report(reports, RPT_ERROR, "Multires modifier returned error, skipping apply");
return 0;
}