Memory saving for large renders:
authorTon Roosendaal <ton@blender.org>
Tue, 14 Mar 2006 21:29:42 +0000 (21:29 +0000)
committerTon Roosendaal <ton@blender.org>
Tue, 14 Mar 2006 21:29:42 +0000 (21:29 +0000)
commitea9866a75f9e7f348364617b866cd2e6f057e458
tree8ede0ba1858980cb90409127c6cf8b90c07fcddf
parentafc8dec9218ad0f85dd5c32475d09dfde74723b5
Memory saving for large renders:

New option "Save Buffers", in first Output panel of renderbuttons, will not
allocate all render buffers, but instead save the rendered tiles to exr.
For each scene rendered, a single exr file then is created.
After rendering, the files get read, and only then the memory allocation is
done.

The exr files are saved in the temp dir (from user settings), and have
names derived from the filename+scene name. That way these buffers remain
relatively unique, and can be re-used later too.

Saving all render-layers and passes in a single file (as F3 command) will
be done later. Also reading back the current muli-layer exr files is not
supported yet (will read black). The purpose is that these files then can
be used as input for the Compositor.

One fun thing I added; after rendering once with this option, close
Blender, and restart it. If you have a Composite set up press 'R' on an
active RenderResult node. This will refresh the node(s) and load the exr,
so you can composite again without a re-render.
source/blender/imbuf/intern/openexr/openexr_api.cpp
source/blender/makesdna/DNA_scene_types.h
source/blender/render/intern/source/pipeline.c
source/blender/src/buttons_scene.c
source/blender/src/editnode.c