[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13488] trunk/blender/source/blender: Fixes in reading back rendered temp files ("Save buffers" and "FSA" options).
Ton Roosendaal
ton at blender.org
Wed Jan 30 22:14:41 CET 2008
Revision: 13488
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13488
Author: ton
Date: 2008-01-30 22:14:36 +0100 (Wed, 30 Jan 2008)
Log Message:
-----------
Fixes in reading back rendered temp files ("Save buffers" and "FSA" options).
Press Rkey in compositor for reading back render results and invoke a compo.
This now correctly reads AO (skipped it sometimes) and it makes a correct
composite.
FSA todo:
- hotkey + button for reading all samples back + composite
- solve black border around image
Modified Paths:
--------------
trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp
trunk/blender/source/blender/render/intern/source/pipeline.c
trunk/blender/source/blender/src/editnode.c
Modified: trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp
===================================================================
--- trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp 2008-01-30 20:19:40 UTC (rev 13487)
+++ trunk/blender/source/blender/imbuf/intern/openexr/openexr_api.cpp 2008-01-30 21:14:36 UTC (rev 13488)
@@ -478,7 +478,7 @@
{
ExrHandle *data= (ExrHandle *)handle;
- if(BLI_exists(filename)) {
+ if(BLI_exists(filename) && BLI_filepathsize(filename)>32) { /* 32 is arbitrary, but zero length files crashes exr */
data->ifile = new InputFile(filename);
if(data->ifile) {
Box2i dw = data->ifile->header().dataWindow();
Modified: trunk/blender/source/blender/render/intern/source/pipeline.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/pipeline.c 2008-01-30 20:19:40 UTC (rev 13487)
+++ trunk/blender/source/blender/render/intern/source/pipeline.c 2008-01-30 21:14:36 UTC (rev 13488)
@@ -562,23 +562,16 @@
render_layer_add_pass(rr, rl, 3, SCE_PASS_DIFFUSE);
if(srl->passflag & SCE_PASS_SPEC)
render_layer_add_pass(rr, rl, 3, SCE_PASS_SPEC);
- if(re->r.mode & R_SHADOW)
- if(srl->passflag & SCE_PASS_SHADOW)
- render_layer_add_pass(rr, rl, 3, SCE_PASS_SHADOW);
- if(re->r.mode & R_RAYTRACE) {
- if(srl->passflag & SCE_PASS_AO)
- render_layer_add_pass(rr, rl, 3, SCE_PASS_AO);
- if(srl->passflag & SCE_PASS_REFLECT)
- render_layer_add_pass(rr, rl, 3, SCE_PASS_REFLECT);
- if(srl->passflag & SCE_PASS_REFRACT)
- render_layer_add_pass(rr, rl, 3, SCE_PASS_REFRACT);
- }
- else if(re->wrld.mode & WO_AMB_OCC)
- if(re->wrld.ao_gather_method == WO_AOGATHER_APPROX)
- render_layer_add_pass(rr, rl, 3, SCE_PASS_AO);
- if(re->r.mode & R_RADIO)
- if(srl->passflag & SCE_PASS_RADIO)
- render_layer_add_pass(rr, rl, 3, SCE_PASS_RADIO);
+ if(srl->passflag & SCE_PASS_AO)
+ render_layer_add_pass(rr, rl, 3, SCE_PASS_AO);
+ if(srl->passflag & SCE_PASS_SHADOW)
+ render_layer_add_pass(rr, rl, 3, SCE_PASS_SHADOW);
+ if(srl->passflag & SCE_PASS_REFLECT)
+ render_layer_add_pass(rr, rl, 3, SCE_PASS_REFLECT);
+ if(srl->passflag & SCE_PASS_REFRACT)
+ render_layer_add_pass(rr, rl, 3, SCE_PASS_REFRACT);
+ if(srl->passflag & SCE_PASS_RADIO)
+ render_layer_add_pass(rr, rl, 3, SCE_PASS_RADIO);
if(srl->passflag & SCE_PASS_INDEXOB)
render_layer_add_pass(rr, rl, 1, SCE_PASS_INDEXOB);
if(srl->passflag & SCE_PASS_MIST)
Modified: trunk/blender/source/blender/src/editnode.c
===================================================================
--- trunk/blender/source/blender/src/editnode.c 2008-01-30 20:19:40 UTC (rev 13487)
+++ trunk/blender/source/blender/src/editnode.c 2008-01-30 21:14:36 UTC (rev 13488)
@@ -2005,6 +2005,10 @@
}
}
+ /* own render result should be read/allocated */
+ if(G.scene->id.flag & LIB_DOIT)
+ RE_ReadRenderResult(G.scene, G.scene);
+
snode_handle_recalc(snode);
}
More information about the Bf-blender-cvs
mailing list