[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [10729] trunk/blender/source/blender:

Brecht Van Lommel brechtvanlommel at pandora.be
Thu May 17 18:51:12 CEST 2007


Revision: 10729
          https://svn.blender.org//revision/?rev=10729&view=rev
Author:   blendix
Date:     2007-05-17 18:51:09 +0200 (Thu, 17 May 2007)

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

Disable SSS better for preview rendering, so it does not slow down
other preview renders at all.

Also added a flag to enable/disable SSS per scene. There is no
button for it yet, the Render panel has no space left .. will find
a place for it later.

The subversion number was also increased to enable the flag for
older .blends.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_blender.h
    trunk/blender/source/blender/blenloader/intern/readfile.c
    trunk/blender/source/blender/makesdna/DNA_scene_types.h
    trunk/blender/source/blender/render/intern/source/convertblender.c
    trunk/blender/source/blender/src/previewrender.c

Modified: trunk/blender/source/blender/blenkernel/BKE_blender.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_blender.h	2007-05-17 06:45:16 UTC (rev 10728)
+++ trunk/blender/source/blender/blenkernel/BKE_blender.h	2007-05-17 16:51:09 UTC (rev 10729)
@@ -44,7 +44,7 @@
 struct MemFile;
 
 #define BLENDER_VERSION			244
-#define BLENDER_SUBVERSION		0
+#define BLENDER_SUBVERSION		1
 
 #define BLENDER_MINVERSION		240
 #define BLENDER_MINSUBVERSION	0

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2007-05-17 06:45:16 UTC (rev 10728)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2007-05-17 16:51:09 UTC (rev 10729)
@@ -6462,7 +6462,15 @@
 				customdata_version_243(me);
 		}
 	}
+	if(main->versionfile <= 244) {
+		Scene *sce;
 
+		if(main->subversionfile < 1) {
+			for(sce= main->scene.first; sce; sce= sce->id.next)
+				sce->r.mode |= R_SSS;
+		}
+	}
+
 	/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
 	/* WATCH IT 2!: Userdef struct init has to be in src/usiblender.c! */
 

Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h	2007-05-17 06:45:16 UTC (rev 10728)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h	2007-05-17 16:51:09 UTC (rev 10729)
@@ -486,6 +486,7 @@
 		/* threads obsolete... is there for old files */
 #define R_THREADS		0x80000
 #define R_SPEED			0x100000
+#define R_SSS			0x200000
 
 /* filtertype */
 #define R_FILTER_BOX	0

Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c	2007-05-17 06:45:16 UTC (rev 10728)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c	2007-05-17 16:51:09 UTC (rev 10729)
@@ -3483,7 +3483,7 @@
 			project_renderdata(re, projectverto, re->r.mode & R_PANORAMA, 0);
 
 		/* SSS */
-		if(!re->test_break())
+		if((re->r.mode & R_SSS) && !re->test_break())
 			if (re->r.renderer==R_INTERN)
 				make_sss_tree(re);
 	}

Modified: trunk/blender/source/blender/src/previewrender.c
===================================================================
--- trunk/blender/source/blender/src/previewrender.c	2007-05-17 06:45:16 UTC (rev 10728)
+++ trunk/blender/source/blender/src/previewrender.c	2007-05-17 16:51:09 UTC (rev 10729)
@@ -283,6 +283,8 @@
 				/* turn on raytracing if needed */
 				if(mat->mode_l & (MA_RAYTRANSP|MA_RAYMIRROR))
 					sce->r.mode |= R_RAYTRACE;
+				if(mat->sss_flag & MA_DIFF_SSS)
+					sce->r.mode |= R_SSS;
 				
 				/* turn off fake shadows if needed */
 				/* this only works in a specific case where the preview.blend contains
@@ -314,7 +316,7 @@
 				}
 			}
 			else {
-				sce->r.mode &= ~(R_OSA|R_RAYTRACE);
+				sce->r.mode &= ~(R_OSA|R_RAYTRACE|R_SSS);
 			}
 			
 			for(base= sce->base.first; base; base= base->next) {





More information about the Bf-blender-cvs mailing list