[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14721] trunk/blender/source/blender/ render/intern/source/rendercore.c:

Brecht Van Lommel brechtvanlommel at pandora.be
Wed May 7 16:58:34 CEST 2008


Revision: 14721
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14721
Author:   blendix
Date:     2008-05-07 16:58:33 +0200 (Wed, 07 May 2008)

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

Fix for bug #10990: edge render AA issue.

Modified Paths:
--------------
    trunk/blender/source/blender/render/intern/source/rendercore.c

Modified: trunk/blender/source/blender/render/intern/source/rendercore.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/rendercore.c	2008-05-07 12:45:02 UTC (rev 14720)
+++ trunk/blender/source/blender/render/intern/source/rendercore.c	2008-05-07 14:58:33 UTC (rev 14721)
@@ -849,7 +849,7 @@
 }
 
 /* adds only alpha values */
-void edge_enhance_tile(RenderPart *pa, float *rectf)	
+void edge_enhance_tile(RenderPart *pa, float *rectf, int *rectz)
 {
 	/* use zbuffer to define edges, add it to the image */
 	int y, x, col, *rz, *rz1, *rz2, *rz3;
@@ -857,13 +857,13 @@
 	float *rf;
 	
 	/* shift values in zbuffer 4 to the right (anti overflows), for filter we need multiplying with 12 max */
-	rz= pa->rectz;
+	rz= rectz;
 	if(rz==NULL) return;
 	
 	for(y=0; y<pa->recty; y++)
 		for(x=0; x<pa->rectx; x++, rz++) (*rz)>>= 4;
 	
-	rz1= pa->rectz;
+	rz1= rectz;
 	rz2= rz1+pa->rectx;
 	rz3= rz2+pa->rectx;
 	
@@ -903,7 +903,7 @@
 	}
 	
 	/* shift back zbuf values, we might need it still */
-	rz= pa->rectz;
+	rz= rectz;
 	for(y=0; y<pa->recty; y++)
 		for(x=0; x<pa->rectx; x++, rz++) (*rz)<<= 4;
 	
@@ -1012,7 +1012,7 @@
 
 	if(sdata->rl->layflag & SCE_LAY_EDGE) 
 		if(R.r.mode & R_EDGE) 
-			edge_enhance_tile(pa, sdata->edgerect);
+			edge_enhance_tile(pa, sdata->edgerect, zspan->rectz);
 }
 
 /* main call for shading Delta Accum, for OSA */
@@ -1189,7 +1189,7 @@
 			if(rl->layflag & SCE_LAY_EDGE) {
 				if(R.r.mode & R_EDGE) {
 					edgerect= MEM_callocN(sizeof(float)*pa->rectx*pa->recty, "rectedge");
-					edge_enhance_tile(pa, edgerect);
+					edge_enhance_tile(pa, edgerect, pa->rectz);
 				}
 			}
 			





More information about the Bf-blender-cvs mailing list