[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35940] trunk/blender/source/blender/ editors/space_view3d/view3d_draw.c: fix problem with recent commit [#26717] X-Ray conflict (X-Ray Grease Pencil and Object X-Ray)

Campbell Barton ideasman42 at gmail.com
Fri Apr 1 16:14:37 CEST 2011


Revision: 35940
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35940
Author:   campbellbarton
Date:     2011-04-01 14:14:37 +0000 (Fri, 01 Apr 2011)
Log Message:
-----------
fix problem with recent commit [#26717] X-Ray conflict (X-Ray Grease Pencil and Object X-Ray)

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

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_draw.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_draw.c	2011-04-01 14:04:26 UTC (rev 35939)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_draw.c	2011-04-01 14:14:37 UTC (rev 35940)
@@ -2120,6 +2120,11 @@
 		}
 	}
 
+	/* must be before xray draw which clears the depth buffer */
+	if(v3d->zbuf) glDisable(GL_DEPTH_TEST);
+	draw_gpencil_view3d_ext(scene, v3d, ar, 1);
+	if(v3d->zbuf) glEnable(GL_DEPTH_TEST);
+
 	/* transp and X-ray afterdraw stuff */
 	if(v3d->afterdraw_transp.first)		view3d_draw_transp(scene, ar, v3d);
 	if(v3d->afterdraw_xray.first)		view3d_draw_xray(scene, ar, v3d, 1);	// clears zbuffer if it is used!
@@ -2132,8 +2137,6 @@
 	}
 
 	/* draw grease-pencil stuff */
-	draw_gpencil_view3d_ext(scene, v3d, ar, 1);
-
 	ED_region_pixelspace(ar);
 
 	/* draw grease-pencil stuff - needed to get paint-buffer shown too (since it's 2D) */
@@ -2451,7 +2454,14 @@
 	}
 
 //	REEB_draw();
-	
+
+	if ((v3d->flag2 & V3D_RENDER_OVERRIDE)==0) {
+		/* must be before xray draw which clears the depth buffer */
+		if(v3d->zbuf) glDisable(GL_DEPTH_TEST);
+		draw_gpencil_view3d((bContext *)C, 1);
+		if(v3d->zbuf) glEnable(GL_DEPTH_TEST);
+	}
+
 	/* Transp and X-ray afterdraw stuff */
 	if(v3d->afterdraw_transp.first)		view3d_draw_transp(scene, ar, v3d);
 	if(v3d->afterdraw_xray.first)		view3d_draw_xray(scene, ar, v3d, 1);	// clears zbuffer if it is used!
@@ -2472,12 +2482,8 @@
 		v3d->zbuf= FALSE;
 		glDisable(GL_DEPTH_TEST);
 	}
-	
+
 	if ((v3d->flag2 & V3D_RENDER_OVERRIDE)==0) {
-		/* draw grease-pencil stuff (3d-space strokes) */
-		//if (v3d->flag2 & V3D_DISPGP)
-			draw_gpencil_view3d((bContext *)C, 1);
-
 		BDR_drawSketch(C);
 	}
 




More information about the Bf-blender-cvs mailing list