[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18397] branches/blender2.5/blender/source /blender: 2.5

Ton Roosendaal ton at blender.org
Wed Jan 7 15:46:52 CET 2009


Revision: 18397
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18397
Author:   ton
Date:     2009-01-07 15:46:50 +0100 (Wed, 07 Jan 2009)

Log Message:
-----------
2.5

Finished a couple of XXX todo's in drawing code,
attempt to fix subsurf crash... didnt work yet!

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_customdata.h
    branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h
    branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/object.c
    branches/blender2.5/blender/source/blender/blenkernel/intern/subsurf_ccg.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_draw.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_intern.h
    branches/blender2.5/blender/source/blender/editors/transform/transform_conversions.c
    branches/blender2.5/blender/source/blender/makesdna/DNA_view3d_types.h

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h	2009-01-07 14:46:50 UTC (rev 18397)
@@ -459,9 +459,6 @@
 
 void weight_to_rgb(float input, float *fr, float *fg, float *fb);
 
-/* determines required DerivedMesh data according to view and edit modes */
-CustomDataMask get_viewedit_datamask();
-
 /* convert layers requested by a GLSL material to actually available layers in
  * the DerivedMesh, with both a pointer for arrays and an offset for editmesh */
 typedef struct DMVertexAttribs {

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_customdata.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_customdata.h	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_customdata.h	2009-01-07 14:46:50 UTC (rev 18397)
@@ -32,11 +32,9 @@
 #ifndef BKE_CUSTOMDATA_H
 #define BKE_CUSTOMDATA_H
 
-#include "BLO_sys_types.h" // for intptr_t support
-
 struct CustomData;
 struct CustomDataLayer;
-typedef intptr_t CustomDataMask;
+typedef unsigned int CustomDataMask;
 
 extern const CustomDataMask CD_MASK_BAREMESH;
 extern const CustomDataMask CD_MASK_MESH;

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_modifier.h	2009-01-07 14:46:50 UTC (rev 18397)
@@ -291,7 +291,7 @@
 struct Object *modifiers_isDeformedByArmature(struct Object *ob);
 struct Object *modifiers_isDeformedByLattice(struct Object *ob);
 int           modifiers_usesArmature(struct Object *ob, struct bArmature *arm);
-int           modifiers_isDeformed(struct Object *ob);
+int           modifiers_isDeformed(struct Scene *scene, struct Object *ob);
 void          modifier_freeTemporaryData(struct ModifierData *md);
 
 int           modifiers_indexInObject(struct Object *ob, struct ModifierData *md);

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -1412,47 +1412,6 @@
 	return dm;
 }
 
-CustomDataMask get_viewedit_datamask()
-{
-#if 0
-	XXX
-	CustomDataMask mask = CD_MASK_BAREMESH;
-	ScrArea *sa;
-	/* check if we need tfaces & mcols due to face select or texture paint */
-	if(FACESEL_PAINT_TEST || G.f & G_TEXTUREPAINT)
-		mask |= CD_MASK_MTFACE | CD_MASK_MCOL;
-
-	/* check if we need tfaces & mcols due to view mode */
-	for(sa = G.curscreen->areabase.first; sa; sa = sa->next) {
-		if(sa->spacetype == SPACE_VIEW3D) {
-			View3D *view = sa->spacedata.first;
-			if(view->drawtype == OB_SHADED) {
-				/* this includes normals for mesh_create_shadedColors */
-				mask |= CD_MASK_MTFACE | CD_MASK_MCOL | CD_MASK_NORMAL | CD_MASK_ORCO;
-			}
-			if((view->drawtype == OB_TEXTURE) || ((view->drawtype == OB_SOLID) && (view->flag2 & V3D_SOLID_TEX))) {
-				mask |= CD_MASK_MTFACE | CD_MASK_MCOL;
-
-				if((G.fileflags & G_FILE_GAME_MAT) &&
-				   (G.fileflags & G_FILE_GAME_MAT_GLSL)) {
-					mask |= CD_MASK_ORCO;
-				}
-			}
-		}
-	}
-
-	/* check if we need mcols due to vertex paint or weightpaint */
-	if(G.f & G_VERTEXPAINT || G.f & G_WEIGHTPAINT)
-		mask |= CD_MASK_MCOL;
-
-	if(G.f & G_SCULPTMODE)
-		mask |= CD_MASK_MDISPS;
-
-	return mask;
-#endif
-	return 0;
-}
-
 static float *get_editmesh_orco_verts(EditMesh *em)
 {
 	EditVert *eve;

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -8471,8 +8471,6 @@
 			qRedraw = 1;
 		}
 	}
-
-// XXX	if (qRedraw) allqueue(REDRAWBUTSEDIT, 0);
 }
 
 void modifiers_foreachObjectLink(Object *ob, ObjectWalkFunc walk,
@@ -8538,7 +8536,6 @@
 
 	md->error = BLI_strdup(buffer);
 
-// XXX	allqueue(REDRAWBUTSEDIT, 0);
 }
 
 /* used for buttons, to find out if the 'draw deformed in editmode' option is
@@ -8766,15 +8763,15 @@
 	return 0;
 }
 
-int modifiers_isDeformed(Object *ob)
+int modifiers_isDeformed(Scene *scene, Object *ob)
 {
 	ModifierData *md = modifiers_getVirtualModifierList(ob);
 	
 	for (; md; md=md->next) {
-			// XXX if(ob==obedit && (md->mode & eModifierMode_Editmode)==0);
-			// else 
+		if(ob==scene->obedit && (md->mode & eModifierMode_Editmode)==0);
+		else 
 			if(modifier_isDeformer(md))
-			return 1;
+				return 1;
 	}
 	return 0;
 }

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/object.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/object.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -2273,7 +2273,7 @@
 			
 			/* includes all keys and modifiers */
 			if(ob->type==OB_MESH) {
-				makeDerivedMesh(scene, ob, NULL, get_viewedit_datamask());
+				makeDerivedMesh(scene, ob, NULL, CD_MASK_BAREMESH);	// here was vieweditdatamask? XXX
 			}
 			else if(ob->type==OB_MBALL) {
 				makeDispListMBall(scene, ob);

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/subsurf_ccg.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/subsurf_ccg.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/subsurf_ccg.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -2108,7 +2108,7 @@
 			if (draw) {
 				if (draw==2) {
 		  			glEnable(GL_POLYGON_STIPPLE);
-		  			glPolygonStipple(0); //XXX stipple_quarttone);
+		  			glPolygonStipple(stipple_quarttone);
 				}
 				
 				for (S=0; S<numVerts; S++) {

Modified: branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -2151,7 +2151,7 @@
 	int draw_wire = 0;
 	int totvert, totedge, totface;
 	DispList *dl;
-	DerivedMesh *dm= mesh_get_derived_final(scene, ob, get_viewedit_datamask());
+	DerivedMesh *dm= mesh_get_derived_final(scene, ob, v3d->customdata_mask);
 
 	if(!dm)
 		return;
@@ -2278,7 +2278,7 @@
 				dm->release(dm);
 				shadeDispList(scene, base);
 				dl = find_displist(&ob->disp, DL_VERTCOL);
-				dm= mesh_get_derived_final(scene, ob, get_viewedit_datamask());
+				dm= mesh_get_derived_final(scene, ob, v3d->customdata_mask);
 			}
 
 			if ((v3d->flag&V3D_SELECT_OUTLINE) && (base->flag&SELECT) && !draw_wire) {
@@ -2371,7 +2371,7 @@
 			finalDM = cageDM = editmesh_get_derived_base(ob, em);
 		else
 			cageDM = editmesh_get_derived_cage_and_final(scene, ob, em, &finalDM,
-			                                get_viewedit_datamask());
+			                                v3d->customdata_mask);
 
 		if(dt>OB_WIRE) {
 			// no transp in editmode, the fancy draw over goes bad then
@@ -5361,9 +5361,9 @@
 }
 
 /* TODO remove this - since face select mode now only works with painting */
-static void bbs_mesh_solid(Scene *scene, Object *ob)
+static void bbs_mesh_solid(Scene *scene, View3D *v3d, Object *ob)
 {
-	DerivedMesh *dm = mesh_get_derived_final(scene, ob, get_viewedit_datamask());
+	DerivedMesh *dm = mesh_get_derived_final(scene, ob, v3d->customdata_mask);
 	Mesh *me = (Mesh*)ob->data;
 	
 	glColor3ub(0, 0, 0);
@@ -5408,7 +5408,7 @@
 
 			EM_free_index_arrays();
 		}
-		else bbs_mesh_solid(scene, ob);
+		else bbs_mesh_solid(scene, v3d, ob);
 	}
 		break;
 	case OB_CURVE:

Modified: branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -187,7 +187,7 @@
 	ScrArea *sa= CTX_wm_area(C);
 	View3D *v3d= sa->spacedata.first;	/* XXX get from region */
 	
-	drawview3dspace(CTX_data_scene(C), ar, v3d);
+	drawview3dspace(CTX_wm_screen(C), CTX_data_scene(C), ar, v3d);
 }
 
 /* add handlers, stuff you only do once or on area/region changes */

Modified: branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_draw.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_draw.c	2009-01-07 13:10:31 UTC (rev 18396)
+++ branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_draw.c	2009-01-07 14:46:50 UTC (rev 18397)
@@ -33,6 +33,7 @@
 #include "DNA_action_types.h"
 #include "DNA_armature_types.h"
 #include "DNA_camera_types.h"
+#include "DNA_customdata_types.h"
 #include "DNA_group_types.h"
 #include "DNA_key_types.h"
 #include "DNA_object_types.h"
@@ -50,6 +51,7 @@
 #include "BLI_rand.h"
 
 #include "BKE_anim.h"
+#include "BKE_customdata.h"
 #include "BKE_image.h"
 #include "BKE_ipo.h"
 #include "BKE_key.h"
@@ -70,6 +72,7 @@
 
 #include "WM_api.h"
 
+#include "ED_armature.h"
 #include "ED_keyframing.h"
 #include "ED_mesh.h"
 #include "ED_screen.h"
@@ -741,13 +744,13 @@
 			
 			/* show name of active bone too (if possible) */
 			if(arm->edbo) {
-//	XXX			EditBone *ebo;
-//				for (ebo=G.edbo.first; ebo; ebo=ebo->next){
-//					if ((ebo->flag & BONE_ACTIVE) && (ebo->layer & arm->layer)) {
-//						name= ebo->name;
-//						break;
-//					}
-//				}

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list