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:
authorNicholas Bishop <nicholasbishop@gmail.com>2006-12-04 01:15:50 +0300
committerNicholas Bishop <nicholasbishop@gmail.com>2006-12-04 01:15:50 +0300
commit4300af777ca2cb2d2b8243b829a246f008d97290 (patch)
treecbebfa267df55f513224925f686f56b669fcb8b2 /source/blender/src/multires.c
parentdde6444d51a83dff9bad803cbf58dedb2222691f (diff)
Added saving/loading of multires deformedvert data. Also added a test_index_face check when reading editmode data for multires.
Diffstat (limited to 'source/blender/src/multires.c')
-rw-r--r--source/blender/src/multires.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/source/blender/src/multires.c b/source/blender/src/multires.c
index 3d86505bb29..377fac9f6c4 100644
--- a/source/blender/src/multires.c
+++ b/source/blender/src/multires.c
@@ -520,14 +520,19 @@ void multires_get_vert(MVert *out, EditVert *eve, MVert *m, int i)
void multires_get_face(MultiresFace *f, EditFace *efa, MFace *m)
{
if(efa) {
- f->v[0]= efa->v1->tmp.l;
- f->v[1]= efa->v2->tmp.l;
- f->v[2]= efa->v3->tmp.l;
- if(efa->v4) f->v[3]= efa->v4->tmp.l;
- f->flag= efa->flag;
- if(efa->f & 1) f->flag |= ME_FACE_SEL;
+ MFace tmp;
+ int j;
+ tmp.v1= efa->v1->tmp.l;
+ tmp.v2= efa->v2->tmp.l;
+ tmp.v3= efa->v3->tmp.l;
+ if(efa->v4) tmp.v4= efa->v4->tmp.l;
+ tmp.flag= efa->flag;
+ if(efa->f & 1) tmp.flag |= ME_FACE_SEL;
else f->flag &= ~ME_FACE_SEL;
- if(efa->h) f->flag |= ME_HIDE;
+ if(efa->h) tmp.flag |= ME_HIDE;
+ test_index_face(&tmp, NULL, 0, efa->v4?4:3);
+ for(j=0; j<4; ++j) f->v[j]= (&tmp.v1)[j];
+ f->flag= tmp.flag;
} else {
f->v[0]= m->v1;
f->v[1]= m->v2;