[Bf-committers] Re: Slow Render Bug in 2.25
Robert Wenzlaff
bf-committers@blender.org
Wed, 1 Jan 2003 11:40:46 -0500
--------------Boundary-00=_YNN1SLTRIYAG00KGM8T2
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Here's the patchfiles for=20
blender/source/blender/render/intern/source/rendercore.c
and
blender/source/blender/render/intern/source/zbuf.c
to fix the slow render problem. I'm gonna have to get around to asking f=
or=20
CVS write access on of these days....
--=20
*********************************************
Do you quality for an abuse program=20
if you find yourself placing 2 or more=20
personal Digikey orders in one day?=20
*********************************************
Robert Wenzlaff rwenzlaff@soylent-green.com
--------------Boundary-00=_YNN1SLTRIYAG00KGM8T2
Content-Type: text/x-diff;
charset="iso-8859-1";
name="zbuf.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="zbuf.patch"
--- zbuf.c Wed Jan 1 11:27:04 2003
+++ zbufmod.c Wed Jan 1 11:24:28 2003
@@ -25,7 +25,7 @@
*
* The Original Code is: all of this file.
*
- * Contributor(s): none yet.
+ * Contributor(s): Hos, RPW.
*
* ***** END GPL/BL DUAL LICENSE BLOCK *****
*/
@@ -2121,7 +2121,7 @@
}
}
}
- if(RE_local_test_break()) break;
+ if(!(v%256)&&RE_local_test_break()) break; /*RPW, HOS */
}
if((R.r.mode & R_OSA)==0) break;
--------------Boundary-00=_YNN1SLTRIYAG00KGM8T2
Content-Type: text/x-diff;
charset="iso-8859-1";
name="rendercore.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="rendercore.patch"
--- rendercore.c Wed Jan 1 11:27:02 2003
+++ rendercoremod.c Wed Jan 1 11:24:45 2003
@@ -25,7 +25,7 @@
*
* The Original Code is: all of this file.
*
- * Contributor(s): none yet.
+ * Contributor(s): Hos, Robert Wenzlaff.
*
* ***** END GPL/BL DUAL LICENSE BLOCK *****
*/
@@ -1055,8 +1055,10 @@
if((a & 255)==0) har= R.bloha[a>>8];
else har++;
- if(RE_local_test_break()) break;
-
+ if(!(a%256)&&RE_local_test_break()) break; /* Hos, RPW - fix slow render bug, */
+ /* !(loopvar%256) keeps checking for */
+ /* ESC too often and bogging down render */
+ /* (Based on discovery by Rob Haarsma) */
if(ys>har->maxy);
else if(ys<har->miny);
else {
@@ -1078,7 +1080,7 @@
for(x=minx; x<=maxx; x++) {
flarec= har->flarec; /* har->pixels mag maar 1 x geteld worden */
-
+
if( IS_A_POINTER_CODE(*rd)) {
xn= x-har->xs;
xsq= xn*xn;
@@ -1162,7 +1164,7 @@
if((a & 255)==0) har= R.bloha[a>>8];
else har++;
- if(RE_local_test_break()) break;
+ if(!(a%256)&&RE_local_test_break()) break;/*Hos, RPW, fixes Slow Render Bug*/
if(ys>har->maxy);
else if(ys<har->miny);
@@ -1216,7 +1218,7 @@
if((a & 255)==0) har= R.bloha[a>>8];
else har++;
- if(RE_local_test_break()) break;
+ if(!(a%256)&&RE_local_test_break()) break;/*Hos, RPW, fixes slow render bug */
if(har->maxy<0);
else if(R.recty<har->miny);
@@ -1270,7 +1272,7 @@
rectt+= R.rectx;
rectz+= R.rectx;
- if(RE_local_test_break()) break;
+ if(!(y%256)&&RE_local_test_break()) break;/*Hos,RPW, Fixes slow render bug */
}
}
@@ -2489,7 +2491,7 @@
/* 1 is voor osa */
if(R.r.mode & R_EDGE) edge_enhance();
- if(RE_local_test_break()) break;
+ if(!(v%256)&&RE_local_test_break()) break; /*Hos,RPW, fixes slow render bug*/
}
if(R.flag & (R_ZTRA+R_HALO) ) { /* om de juiste zbuffer Z voor transp en halo's terug te halen */
xd= jit[0][0];
@@ -2621,7 +2623,7 @@
}
rz+= R.rectx;
}
- if(RE_local_test_break()) break;
+ if(!(y%256)&&RE_local_test_break()) break; /*Hos,RPW, fixes slow render bug */
}
if( (R.r.mode & R_EDGE) && RE_local_test_break()==0) {
@@ -2722,7 +2724,7 @@
R.rectot);
}
- if(RE_local_test_break()) break;
+ if(!(y%256)&&RE_local_test_break()) break; /*Hos,RPW, Fixes Slow render bug */
}
if(R.flag & R_ZTRA) endaccumbuf();
@@ -2785,7 +2787,7 @@
rectt+= R.rectx;
- if(RE_local_test_break()) break;
+ if(!(y%256)&&RE_local_test_break()) break; /* Hos,RPW, fixes slow render bug */
}
}
--------------Boundary-00=_YNN1SLTRIYAG00KGM8T2--