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>2008-08-14 03:53:28 +0400
committerNicholas Bishop <nicholasbishop@gmail.com>2008-08-14 03:53:28 +0400
commitd2537c77ccc259d7007c6ffa2af2dd42713c020e (patch)
tree7bcbb6d43e0f6424ae0e27bc2ffb107d4113198f /source/blender
parent85292aacc954c552a2f4dc20f9df33dba92eeeea (diff)
Removed a bunch of references to the old multires.
Note: python needs updating to work with the new multires. For now, I've just been commenting out the python multires stuff with #warnings
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/blenkernel/intern/subsurf_ccg.c2
-rw-r--r--source/blender/include/multires.h22
-rw-r--r--source/blender/python/api2_2x/Mesh.c18
-rw-r--r--source/blender/render/intern/source/convertblender.c1
-rw-r--r--source/blender/src/buttons_editing.c21
-rw-r--r--source/blender/src/multires.c302
6 files changed, 11 insertions, 355 deletions
diff --git a/source/blender/blenkernel/intern/subsurf_ccg.c b/source/blender/blenkernel/intern/subsurf_ccg.c
index 2e8e0f864be..94c1f6872e1 100644
--- a/source/blender/blenkernel/intern/subsurf_ccg.c
+++ b/source/blender/blenkernel/intern/subsurf_ccg.c
@@ -64,8 +64,6 @@
#include "CCGSubSurf.h"
-#include "multires.h"
-
typedef struct _VertData {
float co[3];
float no[3];
diff --git a/source/blender/include/multires.h b/source/blender/include/multires.h
index e4726c02d7e..87b10010873 100644
--- a/source/blender/include/multires.h
+++ b/source/blender/include/multires.h
@@ -30,30 +30,8 @@
#ifndef MULTIRES_H
#define MULTIRES_H
-struct CustomData;
-struct EditMesh;
-struct Object;
-struct MDeformVert;
-struct Mesh;
-struct MultiresLevel;
-struct Multires;
-struct uiBlock;
-
/* For canceling operations that don't work with multires on or on a non-base level */
int multires_test();
int multires_level1_test();
-void multires_draw_interface(struct uiBlock *block, unsigned short cx, unsigned short cy);
-
-void multires_make(void *ob, void *me);
-void multires_delete(void *ob, void *me);
-void multires_level_to_editmesh(struct Object *ob, struct Mesh *me, const int render);
-void multires_finish_mesh_update(struct Object *ob);
-void multires_subdivide(void *ob, void *me);
-void multires_del_lower(void *ob, void *me);
-void multires_del_higher(void *ob, void *me);
-void multires_set_level_cb(void *ob, void *me);
-void multires_edge_level_update_cb(void *ob, void *me);
-int multires_modifier_warning();
-
#endif
diff --git a/source/blender/python/api2_2x/Mesh.c b/source/blender/python/api2_2x/Mesh.c
index f65a1e4ccbe..ac993b8fe69 100644
--- a/source/blender/python/api2_2x/Mesh.c
+++ b/source/blender/python/api2_2x/Mesh.c
@@ -87,7 +87,6 @@
#include "constant.h"
#include "gen_utils.h"
#include "gen_library.h"
-#include "multires.h"
/* EXPP Mesh defines */
@@ -7157,19 +7156,20 @@ static int Mesh_setMultires( BPy_Mesh * self, PyObject *value, void *type )
"value out of range" );
switch (GET_INT_FROM_POINTER(type)) {
+#warning "Python needs to be updated to work with the new multires."
case MESH_MULTIRES_LEVEL:
- self->mesh->mr->newlvl = i;
- multires_set_level_cb(self->object, self->mesh);
+ /*self->mesh->mr->newlvl = i;
+ multires_set_level_cb(self->object, self->mesh);*/
break;
case MESH_MULTIRES_EDGE:
- self->mesh->mr->edgelvl = i;
- multires_edge_level_update(self->object, self->mesh);
+ /*self->mesh->mr->edgelvl = i;
+ multires_edge_level_update(self->object, self->mesh);*/
break;
case MESH_MULTIRES_PIN:
- self->mesh->mr->pinlvl = i;
+ /*self->mesh->mr->pinlvl = i;*/
break;
case MESH_MULTIRES_RENDER:
- self->mesh->mr->renderlvl = i;
+ /*self->mesh->mr->renderlvl = i;*/
break;
}
@@ -8061,14 +8061,14 @@ static int Mesh_setFlag( BPy_Mesh * self, PyObject *value, void *type )
if( !param ) {
if ( mesh->mr ) {
- multires_delete(self->object, mesh);
+ /*multires_delete(self->object, mesh);*/
}
} else {
if ( !mesh->mr ) {
if (mesh->key)
return EXPP_ReturnIntError( PyExc_RuntimeError,
"Cannot enable multires for a mesh with shape keys" );
- multires_make(self->object, mesh);
+ /*multires_make(self->object, mesh);*/
}
}
return 0;
diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c
index faa7a68f754..5dddc216b59 100644
--- a/source/blender/render/intern/source/convertblender.c
+++ b/source/blender/render/intern/source/convertblender.c
@@ -100,7 +100,6 @@
#include "IMB_imbuf_types.h"
#include "envmap.h"
-#include "multires.h"
#include "occlusion.h"
#include "render_types.h"
#include "rendercore.h"
diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c
index 92af7d63e17..0a33c1a0d9c 100644
--- a/source/blender/src/buttons_editing.c
+++ b/source/blender/src/buttons_editing.c
@@ -736,14 +736,7 @@ static void delete_customdata_layer(void *data1, void *data2)
rndlayerdata = data->layers[CustomData_get_render_layer_index(data, type)].data;
CustomData_set_layer_active(data, type, layer - &data->layers[index]);
- /* Multires is handled seperately because the display data is separate
- from the data stored in multires */
- if(me && me->mr) {
- multires_delete_layer(me, &me->mr->fdata, type, layer - &data->layers[index]);
- multires_level_to_editmesh(OBACT, me, 0);
- multires_finish_mesh_update(OBACT);
- }
- else if(G.obedit) {
+ if(G.obedit) {
EM_free_data_layer(data, type);
}
else if(me) {
@@ -4789,13 +4782,7 @@ void do_meshbuts(unsigned short event)
break;
case B_NEWTFACE:
- if(me && me->mr) {
- layernum= CustomData_number_of_layers(&me->fdata, CD_MTFACE);
- multires_add_layer(me, &me->mr->fdata, CD_MTFACE, layernum);
- multires_level_to_editmesh(ob, me, 0);
- multires_finish_mesh_update(ob);
- }
- else if(G.obedit) {
+ if(G.obedit) {
layernum= CustomData_number_of_layers(&em->fdata, CD_MTFACE);
EM_add_data_layer(&em->fdata, CD_MTFACE);
CustomData_set_layer_active(&em->fdata, CD_MTFACE, layernum);
@@ -4826,10 +4813,6 @@ void do_meshbuts(unsigned short event)
CustomData_set_layer_active(fdata, CD_MTFACE, acttface-1);
mesh_update_customdata_pointers(me);
- /* Update first-level face data in multires */
- if(me && me->mr && me->mr->current != 1)
- CustomData_set_layer_active(&me->mr->fdata, CD_MTFACE, acttface-1);
-
DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA);
BIF_undo_push("Set Active UV Texture");
allqueue(REDRAWVIEW3D, 0);
diff --git a/source/blender/src/multires.c b/source/blender/src/multires.c
index abad36f05ce..cf811fde300 100644
--- a/source/blender/src/multires.c
+++ b/source/blender/src/multires.c
@@ -79,8 +79,6 @@
#include <math.h>
-void multires_calc_temp_data(struct MultiresLevel *lvl);
-
int multires_test()
{
Mesh *me= get_mesh(OBACT);
@@ -107,303 +105,3 @@ void multires_check_state()
if(G.f & G_SCULPTMODE && !G.obedit)
sculptmode_correct_state();
}
-
-static void medge_flag_to_eed(const short flag, const char crease, EditEdge *eed)
-{
- if(!eed) return;
-
- if(flag & ME_SEAM) eed->seam= 1;
- if(flag & ME_SHARP) eed->sharp = 1;
- if(flag & SELECT) eed->f |= SELECT;
- if(flag & ME_FGON) eed->h= EM_FGON;
- if(flag & ME_HIDE) eed->h |= 1;
-
- eed->crease= ((float)crease)/255.0;
-}
-
-void multires_level_to_editmesh(Object *ob, Mesh *me, const int render)
-{
- MultiresLevel *lvl= BLI_findlink(&me->mr->levels,me->mr->current-1);
- int i;
- EditMesh *em= (!render && G.obedit) ? G.editMesh : NULL;
- EditVert **eves= NULL;
- EditEdge *eed= NULL;
-
- if(em) {
- /* Remove editmesh elements */
- free_editMesh(em);
-
- eves= MEM_callocN(sizeof(EditVert*)*lvl->totvert, "editvert pointers");
-
- /* Vertices/Edges/Faces */
- for(i=0; i<lvl->totvert; ++i) {
- eves[i]= addvertlist(me->mr->verts[i].co, NULL);
- if(me->mr->verts[i].flag & 1) eves[i]->f |= SELECT;
- if(me->mr->verts[i].flag & ME_HIDE) eves[i]->h= 1;
- eves[i]->data= NULL;
- }
- for(i=0; i<lvl->totedge; ++i) {
- addedgelist(eves[lvl->edges[i].v[0]], eves[lvl->edges[i].v[1]], NULL);
- }
- for(i=0; i<lvl->totface; ++i) {
- EditVert *eve4= lvl->faces[i].v[3] ? eves[lvl->faces[i].v[3]] : NULL;
- EditFace *efa= addfacelist(eves[lvl->faces[i].v[0]], eves[lvl->faces[i].v[1]],
- eves[lvl->faces[i].v[2]], eve4, NULL, NULL);
- efa->flag= lvl->faces[i].flag & ~ME_HIDE;
- efa->mat_nr= lvl->faces[i].mat_nr;
- if(lvl->faces[i].flag & ME_FACE_SEL)
- efa->f |= SELECT;
- if(lvl->faces[i].flag & ME_HIDE) efa->h= 1;
- efa->data= NULL;
- }
-
- /* Edge flags */
- eed= em->edges.first;
- if(lvl==me->mr->levels.first) {
- for(i=0; i<lvl->totedge; ++i) {
- medge_flag_to_eed(me->mr->edge_flags[i], me->mr->edge_creases[i], eed);
- eed= eed->next;
- }
- } else {
- MultiresLevel *lvl1= me->mr->levels.first;
- const int last= lvl1->totedge * pow(2, me->mr->current-1);
- for(i=0; i<last; ++i) {
- const int ndx= i / pow(2, me->mr->current-1);
-
- medge_flag_to_eed(me->mr->edge_flags[ndx], me->mr->edge_creases[ndx], eed);
- eed= eed->next;
- }
- }
-
- eed= em->edges.first;
- for(i=0, eed= em->edges.first; i<lvl->totedge; ++i, eed= eed->next) {
- eed->h= me->mr->verts[lvl->edges[i].v[0]].flag & ME_HIDE ||
- me->mr->verts[lvl->edges[i].v[1]].flag & ME_HIDE;
- }
-
- EM_select_flush();
-
- multires_customdata_to_mesh(me, em, lvl, &me->mr->vdata, em ? &em->vdata : &me->vdata, CD_MDEFORMVERT);
- multires_customdata_to_mesh(me, em, lvl, &me->mr->fdata, em ? &em->fdata : &me->fdata, CD_MTFACE);
-
- /* Colors */
- if(me->mr->use_col) {
- MCol c[4];
- EditFace *efa= NULL;
- CustomData *src= &em->fdata;
-
- if(me->mr->use_col) EM_add_data_layer(src, CD_MCOL);
- efa= em->faces.first;
-
- for(i=0; i<lvl->totface; ++i) {
- if(me->mr->use_col) {
- multires_to_mcol(&lvl->colfaces[i], c);
- CustomData_em_set(src, efa->data, CD_MCOL, c);
- }
- efa= efa->next;
- }
-
- }
-
- mesh_update_customdata_pointers(me);
-
- MEM_freeN(eves);
- DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA);
- recalc_editnormals();
- }
-}
-
-void multires_make(void *ob, void *me_v)
-{
- Mesh *me= me_v;
- Key *key;
-
- /* Check for shape keys */
- key= me->key;
- if(key) {
- int ret= okee("Adding multires will delete all shape keys, proceed?");
- if(ret) {
- free_key(key);
- me->key= NULL;
- } else
- return;
- }
-
- waitcursor(1);
-
- multires_check_state();
-
- multires_create(ob, me);
-
- allqueue(REDRAWBUTSEDIT, 0);
- BIF_undo_push("Make multires");
- waitcursor(0);
-}
-
-void multires_delete(void *ob, void *me_v)
-{
- Mesh *me= me_v;
- multires_free(me->mr);
- me->mr= NULL;
-
- multires_check_state();
-
- allqueue(REDRAWBUTSEDIT, 0);
-
- BIF_undo_push("Apply multires");
-}
-
-/* Make sure that all level indices are clipped to [1, mr->level_count] */
-void multires_clip_levels(Multires *mr)
-{
- if(mr) {
- const int cnt = mr->level_count;
-
- if(mr->current < 1) mr->current = 1;
- if(mr->edgelvl < 1) mr->edgelvl = 1;
- if(mr->pinlvl < 1) mr->pinlvl = 1;
- if(mr->renderlvl < 1) mr->renderlvl = 1;
-
- if(mr->current > cnt) mr->current = cnt;
- if(mr->edgelvl > cnt) mr->edgelvl = cnt;
- if(mr->pinlvl > cnt) mr->pinlvl = cnt;
- if(mr->renderlvl > cnt) mr->renderlvl = cnt;
- }
-}
-
-/* Delete all multires levels beneath current level. Subdivide special
- first-level data up to the new lowest level. */
-void multires_del_lower(void *ob, void *me)
-{
- Multires *mr= ((Mesh*)me)->mr;
- MultiresLevel *lvl1= mr->levels.first, *cr_lvl= current_level(mr);
- MultiresLevel *lvl= NULL, *lvlprev= NULL;
- short *edgeflags= NULL;
- char *edgecreases= NULL;
- int i, last;
-
- if(cr_lvl == lvl1) return;
-
- multires_check_state();
-
- /* Subdivide the edge flags to the current level */
- edgeflags= MEM_callocN(sizeof(short)*current_level(mr)->totedge, "Multires Edge Flags");
- edgecreases= MEM_callocN(sizeof(char)*current_level(mr)->totedge, "Multires Edge Creases");
- last= lvl1->totedge * pow(2, mr->current-1);
- for(i=0; i<last; ++i) {
- edgeflags[i] = mr->edge_flags[(int)(i / pow(2, mr->current-1))];
- edgecreases[i] = mr->edge_creases[(int)(i / pow(2, mr->current-1))];
- }
- MEM_freeN(mr->edge_flags);
- MEM_freeN(mr->edge_creases);
- mr->edge_flags= edgeflags;
- mr->edge_creases= edgecreases;
-
- multires_del_lower_customdata(mr, cr_lvl);
-
- lvl= cr_lvl->prev;
- while(lvl) {
- lvlprev= lvl->prev;
-
- multires_free_level(lvl);
- BLI_freelinkN(&mr->levels, lvl);
-
- mr->current-= 1;
- mr->level_count-= 1;
-
- lvl= lvlprev;
- }
- mr->newlvl= mr->current;
-
- multires_clip_levels(mr);
-
- allqueue(REDRAWBUTSEDIT, 0);
-
- BIF_undo_push("Multires delete lower");
-}
-
-void multires_del_higher(void *ob, void *me)
-{
- Multires *mr= ((Mesh*)me)->mr;
- MultiresLevel *lvl= BLI_findlink(&mr->levels,mr->current-1);
- MultiresLevel *lvlnext;
-
- multires_check_state();
-
- lvl= lvl->next;
- while(lvl) {
- lvlnext= lvl->next;
-
- multires_free_level(lvl);
- BLI_freelinkN(&mr->levels,lvl);
-
- mr->level_count-= 1;
-
- lvl= lvlnext;
- }
-
- multires_clip_levels(mr);
-
- allqueue(REDRAWBUTSEDIT, 0);
-
- BIF_undo_push("Multires delete higher");
-}
-
-void multires_finish_mesh_update(Object *ob)
-{
- /* friendly check for background render */
- if(G.background==0) {
- object_handle_update(ob);
- countall();
-
- if(G.vd && G.vd->depths) G.vd->depths->damaged= 1;
- allqueue(REDRAWVIEW3D, 0);
- allqueue(REDRAWIMAGE, 0);
- }
-}
-
-void multires_set_level_cb(void *ob, void *me)
-{
- waitcursor(1);
-
- multires_check_state();
-
- multires_set_level(ob, me, 0);
- multires_level_to_editmesh(ob, me, 0);
- multires_finish_mesh_update(ob);
-
- if(G.obedit || G.f & G_SCULPTMODE)
- BIF_undo_push("Multires set level");
-
- allqueue(REDRAWBUTSEDIT, 0);
-
- waitcursor(0);
-}
-
-void multires_edge_level_update_cb(void *ob_v, void *me_v)
-{
- multires_edge_level_update(ob_v, me_v);
- allqueue(REDRAWVIEW3D, 0);
-}
-
-int multires_modifier_warning()
-{
- ModifierData *md;
-
- for(md= modifiers_getVirtualModifierList(OBACT); md; md= md->next) {
- if(md->mode & eModifierMode_Render) {
- switch(md->type) {
- case eModifierType_Subsurf:
- case eModifierType_Build:
- case eModifierType_Mirror:
- case eModifierType_Decimate:
- case eModifierType_Boolean:
- case eModifierType_Array:
- case eModifierType_EdgeSplit:
- return 1;
- }
- }
- }
-
- return 0;
-}