8
$\begingroup$

I'm experimenting with HDRIs and I need to render a still frame of the same scene but with different world settings. I would like to automate this instead of changing the world setting manually, wait for render, change world setting, wait for render, etc.

world settings

The world settings nodes are different for each one, it's not just the HDRI that changes, and I'm using Cycles to render.

If I could keyframe the world setting or bind it to markers like it's possible with cameras I could render an animation with a different world setting for each frame, but I can't figure out how to do this. Does anyone have an idea how to do it?

$\endgroup$
5
  • $\begingroup$ Is it only the HDR images which are different in each world settings? Are you using cycles? $\endgroup$ Feb 25, 2014 at 18:18
  • $\begingroup$ If you can keyframe it you can hit i while hover with the mouse over the field. the field should turn green/yellow. $\endgroup$
    – Vader
    Feb 25, 2014 at 18:30
  • $\begingroup$ @RayMairlot A couple of nodes are tweaked in each world setting in addition to a different HDRI. I've edited my question to reflect that, thanks for pointing it out. $\endgroup$ Feb 25, 2014 at 18:37
  • $\begingroup$ @Vader It's not possible to keyframe the entire world setting using the i key or right-click menu. I was hoping someone might have a workaround. $\endgroup$ Feb 25, 2014 at 18:39
  • $\begingroup$ When switching environments no python command is echoed. I don't think that there is a workaround $\endgroup$
    – Vader
    Feb 25, 2014 at 18:46

1 Answer 1

8
$\begingroup$

You could merge all your world settings into one world setting and animate node properties.

You could use a mix node, as shown below, to animate between different HDR images and animate the factor from 0 to 1 to switch between them. Adding additional mix nodes after the first one would allow you mix between as many HDR images as you want.

enter image description here

Keyframes can be inserted on node properties in the same way as other properties, by pressing I while the cursor is over that value.

As you said that some other nodes were also different in each setup, you could either animate the values for each node or again use a mix node to switch between whole networks of nodes instead of just an environment node as shown below.

enter image description here

Note that to mix 2 background shaders a 'Mix Shader' node is used instead of 'MixRGB'.

Nodes can be copied from one world setting to another with Ctrl+C and Ctrl+V

$\endgroup$
2
  • $\begingroup$ Perhaps also note Shift+D in addition to copy/paste. $\endgroup$
    – gandalf3
    Feb 25, 2014 at 20:12
  • $\begingroup$ This seems like the best solution. Another way that I was thinking exploring was to link all the objects to different scenes, one per world setting, and batch render all the different scenes at once. But I think your solution is more flexible, thanks for posting it. $\endgroup$ Feb 25, 2014 at 21:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .