[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33783] trunk/blender/source/blender: Bugfix #25288
Ton Roosendaal
ton at blender.org
Sun Dec 19 12:39:56 CET 2010
Revision: 33783
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33783
Author: ton
Date: 2010-12-19 12:39:55 +0100 (Sun, 19 Dec 2010)
Log Message:
-----------
Bugfix #25288
SSS preview render didn't happy.
Was caused by using a Material copy for preview renders (to prevent
crashing in other cases). There were actually 2 errors:
- material copy should be added to preview-main database
- the render was invoked using wrong main database even!
Modified Paths:
--------------
trunk/blender/source/blender/editors/render/render_preview.c
trunk/blender/source/blender/render/intern/source/convertblender.c
Modified: trunk/blender/source/blender/editors/render/render_preview.c
===================================================================
--- trunk/blender/source/blender/editors/render/render_preview.c 2010-12-19 10:38:02 UTC (rev 33782)
+++ trunk/blender/source/blender/editors/render/render_preview.c 2010-12-19 11:39:55 UTC (rev 33783)
@@ -350,6 +350,7 @@
mat= copy_material((Material *)id);
sp->matcopy= mat;
BLI_remlink(&G.main->mat, mat);
+ BLI_addtail(&pr_main->mat, mat);
init_render_material(mat, 0, NULL); /* call that retrieves mode_l */
end_render_material(mat);
@@ -409,6 +410,8 @@
else {
sce->r.mode &= ~(R_OSA|R_RAYTRACE|R_SSS);
+ /* get rid of copied material */
+ BLI_remlink(&pr_main->mat, sp->matcopy);
free_material(sp->matcopy);
MEM_freeN(sp->matcopy);
sp->matcopy= NULL;
@@ -982,7 +985,7 @@
((Camera *)sce->camera->data)->lens *= (float)sp->sizey/(float)sizex;
/* entire cycle for render engine */
- RE_PreviewRender(re, G.main, sce);
+ RE_PreviewRender(re, pr_main, sce);
((Camera *)sce->camera->data)->lens= oldlens;
Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c 2010-12-19 10:38:02 UTC (rev 33782)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c 2010-12-19 11:39:55 UTC (rev 33783)
@@ -924,7 +924,7 @@
if((ma->mode & MA_TRANSP) && (ma->mode & MA_ZTRANSP))
re->flag |= R_ZTRA;
- /* for light groups */
+ /* for light groups and SSS */
ma->flag |= MA_IS_USED;
if(ma->nodetree && ma->use_nodes)
More information about the Bf-blender-cvs
mailing list