diff options
author | Jacques Guignot <guignot@wanadoo.fr> | 2003-06-22 00:57:16 +0400 |
---|---|---|
committer | Jacques Guignot <guignot@wanadoo.fr> | 2003-06-22 00:57:16 +0400 |
commit | bedee3227bb27f73a6fd61d399fc9848664c79b4 (patch) | |
tree | f819170d0d3a863821a6d63ffdf67c16c29edd03 /source/blender/render | |
parent | 3da49a30c8694d6d4edab2afda9f1947f07dacd6 (diff) |
taking care of mist intensity in the render process
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/intern/source/rendercore.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/source/blender/render/intern/source/rendercore.c b/source/blender/render/intern/source/rendercore.c index 7ba81f60154..1489664b414 100644 --- a/source/blender/render/intern/source/rendercore.c +++ b/source/blender/render/intern/source/rendercore.c @@ -158,7 +158,7 @@ float mistfactor(float *co) /* dist en height, return alpha */ } } - return 1.0-fac; + return (1.0-fac)* (1-R.wrld.misi); } void RE_sky(char *col) @@ -1052,8 +1052,10 @@ void scanlinehaloPS(unsigned int *rectz, long *rectdelta, unsigned int *rectt, s 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 { @@ -1159,7 +1161,7 @@ void scanlinehalo(unsigned int *rectz, unsigned int *rectt, short ys) 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); @@ -1213,7 +1215,7 @@ void halovert() 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); @@ -1267,7 +1269,7 @@ void halovert() 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 */ } } @@ -2475,7 +2477,7 @@ void zbufshadeDA(void) /* Delta Accum Pixel Struct */ /* 1 is for 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) ) { /* to get back correct values of zbuffer Z for transp and halos */ xd= jit[0][0]; @@ -2607,7 +2609,7 @@ void zbufshadeDA(void) /* Delta Accum Pixel Struct */ } 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) { @@ -2706,7 +2708,7 @@ void zbufshade(void) 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(); @@ -2769,7 +2771,7 @@ void renderhalo(HaloRen *har) /* postprocess version */ rectt+= R.rectx; - if(RE_local_test_break()) break; + if( !(y % 256) && RE_local_test_break()) break; /* Hos,RPW, fixes slow render bug */ } } |