4
$\begingroup$

There are options to enable or disable the compositor, but is it possible to composite without rendering ?

./blender --background my_file.blend --composite-only \
    --render-result-from-file my_render_result.exr \
    --render-output my_file_output.exr

Setting bpy.context.scene.render.use_compositing allows us to enable or disable the compositor but I cannot find a good way to skip rendering.

The best workaround I have found is finding the layer with the least objects and only enabling that layer for each render layer in order to get the quickest render and then using a script like: https://github.com/armadillica/flamenco/blob/master/flamenco/manager/application/task_compilers/tiled_blender_render_simple_mix.template to add image nodes to simulate the render result.

Is there a better way to do this ?

$\endgroup$
  • $\begingroup$ It shouldn't render as long as the compositor node setup doesn't read from any render-layer nodes. What would you expect to happen in the case a render layer is in the node tree and it needs to read image data from it? $\endgroup$ – ideasman42 May 13 '16 at 12:08
  • $\begingroup$ The any render-layer part is the hardest part. The use case for this is seperatable render / compo with any given *blend file. And I am becoming more convinced that a way to load the render-result from and exr would be the nicest way to handle this $\endgroup$ – Martijn Berger May 13 '16 at 12:22
1
$\begingroup$

Yes, there is a better way to do this. If your composting process doesn't require a render, it should be in its own file. You would do whatever rendering you need, save those out to OpenEXR (or some other format) and use an Image Node to read in your image, or sequence of images and run those through your compositing process.

The way that you "skip" rendering is by deleting all "Render Layer" input nodes and all 3D cameras. This causes problems if you need cameras in your scene, which is why your composting should be in another Blender project.

Alternately, you could put the compositing in another scene in the same Blender file, if that's how you're organizing things.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.