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/include/editmesh.h1
-rw-r--r--source/blender/src/editdeform.c6
-rw-r--r--source/blender/src/editmesh_mods.c2
-rw-r--r--source/blender/src/multires.c12
4 files changed, 19 insertions, 2 deletions
diff --git a/source/blender/include/editmesh.h b/source/blender/include/editmesh.h
index 0dde2b2f695..36007252a26 100644
--- a/source/blender/include/editmesh.h
+++ b/source/blender/include/editmesh.h
@@ -106,6 +106,7 @@ extern EditVert *findnearestvert(int *dist, short sel, short strict);
/* multires.c */
int multires_test();
+int multires_level1_test();
#endif
diff --git a/source/blender/src/editdeform.c b/source/blender/src/editdeform.c
index 007dd52df8b..bca2fc60ef1 100644
--- a/source/blender/src/editdeform.c
+++ b/source/blender/src/editdeform.c
@@ -61,6 +61,8 @@
#include "BSE_edit.h"
+#include "multires.h"
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
@@ -493,6 +495,8 @@ void assign_verts_defgroup (void)
MDeformWeight *newdw;
MDeformVert *dvert;
int i, done;
+
+ if(multires_level1_test()) return;
ob= G.obedit;
@@ -604,6 +608,8 @@ void remove_verts_defgroup (int allverts)
MDeformWeight *newdw;
bDeformGroup *dg, *eg;
int i;
+
+ if(multires_level1_test()) return;
ob= G.obedit;
diff --git a/source/blender/src/editmesh_mods.c b/source/blender/src/editmesh_mods.c
index 1102c69113c..c7b34068b3e 100644
--- a/source/blender/src/editmesh_mods.c
+++ b/source/blender/src/editmesh_mods.c
@@ -2576,6 +2576,8 @@ void editmesh_mark_seam(int clear)
{
EditMesh *em= G.editMesh;
EditEdge *eed;
+
+ if(multires_level1_test()) return;
/* auto-enable seams drawing */
if(clear==0) {
diff --git a/source/blender/src/multires.c b/source/blender/src/multires.c
index e15556c8794..f5690f4eba4 100644
--- a/source/blender/src/multires.c
+++ b/source/blender/src/multires.c
@@ -82,14 +82,22 @@ CustomDataMask vdata_mask= CD_MASK_MDEFORMVERT;
/* editmesh.h */
int multires_test()
{
- Mesh *me= get_mesh(
- OBACT);
+ Mesh *me= get_mesh(OBACT);
if(me && me->mr) {
error("Unable to complete action with multires enabled.");
return 1;
}
return 0;
}
+int multires_level1_test()
+{
+ Mesh *me= get_mesh(OBACT);
+ if(me && me->mr && me->mr->current != 1) {
+ error("Operation only available for multires level 1.");
+ return 1;
+ }
+ return 0;
+}
/* Sculptmode */