[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [27263] branches/render25/source/blender/ render/intern/source/object_mesh.c: Render Branch: fix mistake in last commit, didn't work with

Brecht Van Lommel brecht at blender.org
Thu Mar 4 15:07:12 CET 2010


Revision: 27263
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27263
Author:   blendix
Date:     2010-03-04 15:07:12 +0100 (Thu, 04 Mar 2010)

Log Message:
-----------
Render Branch: fix mistake in last commit, didn't work with
anti-aliasing disabled.

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

Modified: branches/render25/source/blender/render/intern/source/object_mesh.c
===================================================================
--- branches/render25/source/blender/render/intern/source/object_mesh.c	2010-03-04 13:42:07 UTC (rev 27262)
+++ branches/render25/source/blender/render/intern/source/object_mesh.c	2010-03-04 14:07:12 UTC (rev 27263)
@@ -3480,31 +3480,32 @@
 static void set_fullsample_trace_flag(Render *re, ObjectRen *obr)
 {
 	VlakRen *vlr;
-	int a, trace, mode;
+	int a, trace, mode, osa;
 
-	if(re->params.osa==0)
-		return;
-	
+	osa= re->params.osa;
 	trace= re->params.r.mode & R_RAYTRACE;
 	
 	for(a=obr->totvlak-1; a>=0; a--) {
 		vlr= render_object_vlak_get(obr, a);
 		mode= vlr->mat->mode;
 
-		if(mode & MA_FULL_OSA) 
+		if(osa && (mode & MA_FULL_OSA)) {
 			vlr->flag |= R_FULL_OSA;
+		}
 		else if(trace) {
 			/* TODO: remove temporary raytrace_all hack */
-			if(mode & MA_TRACEBLE || re->params.r.raytrace_all)
+			if(mode & MA_TRACEBLE || re->params.r.raytrace_all) {
 				vlr->flag |= R_TRACEBLE;
-
-			if(mode & MA_SHLESS);
-			else if(vlr->mat->material_type == MA_TYPE_VOLUME);
-			else if((mode & MA_RAYMIRROR) || ((mode & MA_TRANSP) && (mode & MA_RAYTRANSP)))
-				/* for blurry reflect/refract, better to take more samples 
-				 * inside the raytrace than as OSA samples */
-				if ((vlr->mat->gloss_mir == 1.0) && (vlr->mat->gloss_tra == 1.0)) 
-					vlr->flag |= R_FULL_OSA;
+			}
+			else if(osa) {
+				if(mode & MA_SHLESS);
+				else if(vlr->mat->material_type == MA_TYPE_VOLUME);
+				else if((mode & MA_RAYMIRROR) || ((mode & MA_TRANSP) && (mode & MA_RAYTRANSP)))
+					/* for blurry reflect/refract, better to take more samples 
+					 * inside the raytrace than as OSA samples */
+					if ((vlr->mat->gloss_mir == 1.0) && (vlr->mat->gloss_tra == 1.0)) 
+						vlr->flag |= R_FULL_OSA;
+			}
 		}
 	}
 }





More information about the Bf-blender-cvs mailing list