[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53993] trunk/blender/source/blender/ editors/space_view3d: Matcap fix:

Ton Roosendaal ton at blender.org
Tue Jan 22 13:36:10 CET 2013


Revision: 53993
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53993
Author:   ton
Date:     2013-01-22 12:36:06 +0000 (Tue, 22 Jan 2013)
Log Message:
-----------
Matcap fix:

Setting Cycles as render engine skipped matcap drawing.
Logic for checking drawing types needed a shuffle.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/drawmesh.c
    trunk/blender/source/blender/editors/space_view3d/drawobject.c

Modified: trunk/blender/source/blender/editors/space_view3d/drawmesh.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawmesh.c	2013-01-22 12:32:07 UTC (rev 53992)
+++ trunk/blender/source/blender/editors/space_view3d/drawmesh.c	2013-01-22 12:36:06 UTC (rev 53993)
@@ -940,7 +940,8 @@
 void draw_mesh_textured(Scene *scene, View3D *v3d, RegionView3D *rv3d,
                         Object *ob, DerivedMesh *dm, const int draw_flags)
 {
-	if ((!BKE_scene_use_new_shading_nodes(scene)) || (draw_flags & DRAW_MODIFIERS_PREVIEW)) {
+	/* if not cycles, or preview-modifiers, or drawing matcaps */
+	if ((!BKE_scene_use_new_shading_nodes(scene)) || (draw_flags & DRAW_MODIFIERS_PREVIEW) || (v3d->flag2 & V3D_SHOW_SOLID_MATCAP)) {
 		draw_mesh_textured_old(scene, v3d, rv3d, ob, dm, draw_flags);
 		return;
 	}

Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c	2013-01-22 12:32:07 UTC (rev 53992)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c	2013-01-22 12:36:06 UTC (rev 53993)
@@ -176,10 +176,13 @@
 		return TRUE;
 
 	/* textured solid */
-	if (v3d->drawtype == OB_SOLID && (v3d->flag2 & (V3D_SOLID_TEX | V3D_SHOW_SOLID_MATCAP))
+	if (v3d->drawtype == OB_SOLID && (v3d->flag2 & V3D_SOLID_TEX)
 		&& !BKE_scene_use_new_shading_nodes(scene))
 			return TRUE;
 	
+	if (v3d->flag2 & V3D_SHOW_SOLID_MATCAP)
+		return 1;
+	
 	return FALSE;
 }
 
@@ -218,12 +221,13 @@
 		return 0;
 	if (ob == OBACT && (ob && ob->mode & OB_MODE_WEIGHT_PAINT))
 		return 0;
-	if (BKE_scene_use_new_shading_nodes(scene))
-		return 0;
 	
 	if (v3d->flag2 & V3D_SHOW_SOLID_MATCAP)
 		return 1;
 	
+	if (BKE_scene_use_new_shading_nodes(scene))
+		return 0;
+	
 	return (scene->gm.matmode == GAME_MAT_GLSL) && (dt > OB_SOLID);
 }
 




More information about the Bf-blender-cvs mailing list