[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30454] branches/soc-2010-jwilkins/source/ blender: * matcap mode was not properly respecting the object maximum draw type setting
Jason Wilkins
Jason.A.Wilkins at gmail.com
Sun Jul 18 03:58:15 CEST 2010
Revision: 30454
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30454
Author: jwilkins
Date: 2010-07-18 03:58:14 +0200 (Sun, 18 Jul 2010)
Log Message:
-----------
* matcap mode was not properly respecting the object maximum draw type setting
* loading an old file updates the object maximum draw type setting from textured to matcap (assumes you mean to keep a lower setting)
Modified Paths:
--------------
branches/soc-2010-jwilkins/source/blender/blenkernel/BKE_blender.h
branches/soc-2010-jwilkins/source/blender/blenkernel/intern/exotic.c
branches/soc-2010-jwilkins/source/blender/blenkernel/intern/object.c
branches/soc-2010-jwilkins/source/blender/blenloader/intern/readfile.c
branches/soc-2010-jwilkins/source/blender/editors/space_view3d/drawobject.c
branches/soc-2010-jwilkins/source/blender/gpu/intern/gpu_draw.c
Modified: branches/soc-2010-jwilkins/source/blender/blenkernel/BKE_blender.h
===================================================================
--- branches/soc-2010-jwilkins/source/blender/blenkernel/BKE_blender.h 2010-07-18 01:51:14 UTC (rev 30453)
+++ branches/soc-2010-jwilkins/source/blender/blenkernel/BKE_blender.h 2010-07-18 01:58:14 UTC (rev 30454)
@@ -45,7 +45,7 @@
struct Main;
#define BLENDER_VERSION 252
-#define BLENDER_SUBVERSION 6 // XXX: this shouldn't be merged with trunk, this is so Sculpt branch can detect old files
+#define BLENDER_SUBVERSION 8 // XXX: this shouldn't be merged with trunk, this is so Sculpt branch can detect old files
#define BLENDER_MINVERSION 250
#define BLENDER_MINSUBVERSION 0
Modified: branches/soc-2010-jwilkins/source/blender/blenkernel/intern/exotic.c
===================================================================
--- branches/soc-2010-jwilkins/source/blender/blenkernel/intern/exotic.c 2010-07-18 01:51:14 UTC (rev 30453)
+++ branches/soc-2010-jwilkins/source/blender/blenkernel/intern/exotic.c 2010-07-18 01:58:14 UTC (rev 30454)
@@ -4062,7 +4062,7 @@
ob->type= OB_MESH;
- ob->dt= OB_TEXTURE;
+ ob->dt= OB_MATCAP;
ob->trackflag= OB_POSY;
ob->upflag= OB_POSZ;
Modified: branches/soc-2010-jwilkins/source/blender/blenkernel/intern/object.c
===================================================================
--- branches/soc-2010-jwilkins/source/blender/blenkernel/intern/object.c 2010-07-18 01:51:14 UTC (rev 30453)
+++ branches/soc-2010-jwilkins/source/blender/blenkernel/intern/object.c 2010-07-18 01:58:14 UTC (rev 30454)
@@ -1025,7 +1025,7 @@
unit_m4(ob->constinv);
unit_m4(ob->parentinv);
unit_m4(ob->obmat);
- ob->dt= OB_TEXTURE;
+ ob->dt= OB_MATCAP;
ob->empty_drawtype= OB_ARROWS;
ob->empty_drawsize= 1.0;
Modified: branches/soc-2010-jwilkins/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/soc-2010-jwilkins/source/blender/blenloader/intern/readfile.c 2010-07-18 01:51:14 UTC (rev 30453)
+++ branches/soc-2010-jwilkins/source/blender/blenloader/intern/readfile.c 2010-07-18 01:58:14 UTC (rev 30454)
@@ -11051,6 +11051,17 @@
}
}
+ /* MatCaps */
+ if (main->versionfile < 252 || (main->versionfile == 252 && main->subversionfile < 8)) {
+ Object *ob;
+ for (ob=main->object.first; ob; ob=ob->id.next) {
+ /* If max drawtype is textured then assume user won't mind if we bump it up to use MatCaps, */
+ /* Otherwise, assume that if max drawtype is less than textured then user doesn't want to use MatCaps */
+ if (ob->dt == OB_TEXTURE)
+ ob->dt = OB_MATCAP;
+ }
+ }
+
/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
/* WATCH IT 2!: Userdef struct init has to be in editors/interface/resources.c! */
Modified: branches/soc-2010-jwilkins/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- branches/soc-2010-jwilkins/source/blender/editors/space_view3d/drawobject.c 2010-07-18 01:51:14 UTC (rev 30453)
+++ branches/soc-2010-jwilkins/source/blender/editors/space_view3d/drawobject.c 2010-07-18 01:58:14 UTC (rev 30454)
@@ -120,7 +120,7 @@
return 1;
/* if its drawing textures with zbuf sel, then dont draw dots */
- if(dt==OB_TEXTURE && ELEM(vd->drawtype, OB_TEXTURE, OB_MATCAP))
+ if(ELEM(dt, OB_TEXTURE, OB_MATCAP) && ELEM(vd->drawtype, OB_TEXTURE, OB_MATCAP))
return 0;
if(vd->drawtype>=OB_SOLID && vd->flag2 & V3D_SOLID_TEX)
@@ -209,7 +209,7 @@
if(ob==OBACT && (ob && ob->mode & OB_MODE_WEIGHT_PAINT))
return 0;
- return ((v3d->drawtype == OB_MATCAP) || (scene->gm.matmode == GAME_MAT_GLSL)) && (dt >= OB_SHADED);
+ return ((dt == OB_MATCAP) || (scene->gm.matmode == GAME_MAT_GLSL)) && (dt >= OB_SHADED);
}
static int check_material_alpha(Base *base, Mesh *me, int glsl)
Modified: branches/soc-2010-jwilkins/source/blender/gpu/intern/gpu_draw.c
===================================================================
--- branches/soc-2010-jwilkins/source/blender/gpu/intern/gpu_draw.c 2010-07-18 01:51:14 UTC (rev 30453)
+++ branches/soc-2010-jwilkins/source/blender/gpu/intern/gpu_draw.c 2010-07-18 01:58:14 UTC (rev 30454)
@@ -947,7 +947,7 @@
GMS.blendmode= GMS.blendmode_fixed;
}
- if (v3d->drawtype!=OB_MATCAP) {
+ if (MIN2(v3d->drawtype, ob->dt) != OB_MATCAP) {
/* no materials assigned? */
if(ob->totcol==0) {
GMS.matbuf[0][0][0]= (defmaterial.ref+defmaterial.emit)*defmaterial.r;
More information about the Bf-blender-cvs
mailing list