[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [27384] branches/render25/source/blender/ render/intern/source/shadeoutput.c: Render Branch: fix SSS being a bit too dark compared to trunk.

Brecht Van Lommel brecht at blender.org
Wed Mar 10 14:35:07 CET 2010


Revision: 27384
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27384
Author:   blendix
Date:     2010-03-10 14:35:07 +0100 (Wed, 10 Mar 2010)

Log Message:
-----------
Render Branch: fix SSS being a bit too dark compared to trunk.

Modified Paths:
--------------
    branches/render25/source/blender/render/intern/source/shadeoutput.c

Modified: branches/render25/source/blender/render/intern/source/shadeoutput.c
===================================================================
--- branches/render25/source/blender/render/intern/source/shadeoutput.c	2010-03-10 11:16:26 UTC (rev 27383)
+++ branches/render25/source/blender/render/intern/source/shadeoutput.c	2010-03-10 13:35:07 UTC (rev 27384)
@@ -729,7 +729,7 @@
 	int passflag= shi->shading.passflag;
 
 	if((ma->sss_flag & MA_DIFF_SSS) && (passflag & (SCE_PASS_COMBINED|SCE_PASS_DIFFUSE))) {
-		float sss[3], col[3], invalpha, texfac= ma->sss_texfac;
+		float sss[3], col[3], div, texfac= ma->sss_texfac;
 
 		if(!sss_sample(re, ma, shi->geometry.co, sss)) {
 			/* preprocess stage */
@@ -738,19 +738,20 @@
 		}
 		else {
 			/* rendering stage */
-			invalpha= (shr->col[3] > FLT_EPSILON)? 1.0f/shr->col[3]: 1.0f;
+			div= shr->col[3]*shi->material.refl;
+			div= (fabs(div) > FLT_EPSILON)? 1.0f/div: 0.0f;
 
 			if(texfac==0.0f) {
 				copy_v3_v3(col, shr->col);
-				mul_v3_fl(col, invalpha);
+				mul_v3_fl(col, div);
 			}
 			else if(texfac==1.0f) {
 				col[0]= col[1]= col[2]= 1.0f;
-				mul_v3_fl(col, invalpha);
+				mul_v3_fl(col, div);
 			}
 			else {
 				copy_v3_v3(col, shr->col);
-				mul_v3_fl(col, invalpha);
+				mul_v3_fl(col, div);
 				col[0]= pow(col[0], 1.0f-texfac);
 				col[1]= pow(col[1], 1.0f-texfac);
 				col[2]= pow(col[2], 1.0f-texfac);





More information about the Bf-blender-cvs mailing list