3
$\begingroup$

I am directing a series of animations in Blender in which the camera floats around dimly-lit rooms to reveal its contents.

The scenes are usually lit only by a couple of elements in the room, usually neon lights or emission objects, and usually contain transparency or reflection objects which are necessary to the scene.

Here is one example scene:

This image is the scene rendered as a single image, without too much noise 1000 samples at 50% of the default 1920 x 1080 resolution:

enter image description here

This render took 50 minutes. Since the animation is 180 frames long, rendering it with these settings would take:

180 * 50 minutes = 6.25 days

This is obviously too long, especially since ideally I would like to make animations longer than 180 frames, add more reflection or transparency objects, and even render at 100% someday. (The result is 2 days on my other computer, which is still a little too long for me). Lower amount of samples (i.e. 300) are faster but obviously produce grainier results.

I've read many questions about this problem, both on Stack and elsewhere, and watched several tutorials, but most of them mostly recommend adding light sources to the scene, or disabling transparency/reflections or other modifications which I think would denature the scene. I tried changing the Exposure, the emission strength, and other settings but it never really kept the scene's mood right.

I even considered just switching to another render engine, but feel that I need advice about that.

My question is: is it possible to render this scene in HD, and with as little grain as possible?

Please post examples of the results you get and how you achieved them.

$\endgroup$
3
  • $\begingroup$ If in all scenes only moving object is the camera, then you may consider baking the textures at desired quality. $\endgroup$
    – markac
    Commented Jan 30, 2016 at 9:43
  • 1
    $\begingroup$ I would strongly recommend that you render the scene with just enough lighting so that most object are well illuminated. Then using post production methods or compositor make those scene dark like the image you posted. Sometimes dark scenes, sometimes can cause slow rendering speed. I also agree with markac above that you could bake some of the material since the final scene is so dark... . honestly if I were you I would use blender render for such a dark looking scene. $\endgroup$
    – hawkenfox
    Commented Jan 30, 2016 at 10:09
  • $\begingroup$ If you have two computers, why not render it out on the faster one in two days like you said and use your other one while it's busy? $\endgroup$ Commented Jan 30, 2016 at 10:28

1 Answer 1

6
$\begingroup$

To be honest, this scene is relatively light-weight already.
A single frame at 1000 samples at 50% resolution takes almost exactly 20 minutes on my CPU (a quad core intel xeon, though the clock rate is only 2.5 GHz). Naturally using a GPU (or both CPU and GPU at once) would help dramatically.

Rendering simply takes time. Even the giant renderfarms at ILM or pixar spend as much as four hours or more[better citation needed] rendering a single frame in some scenes.

If you want to render the scene exactly as it is in a short time frame, you might consider sending it off to a renderfarm such as SheepIt, a free distributed blender-specific renderfarm where blenderusers from all over the world donate and exchange their processing time.

Optimizations

For reference:
Default setup (100 samples, 40% resolution, frame 20): 1:19

enter image description here

As far as things you can do without changing the result go, this scene is already pretty optimized.
You can shave off a few seconds by reducing the bounces. (an optimization of a few seconds at preview resolution and samples can turn into minutes at full quality)

Reduced bounces: 0:59

enter image description here

Keep in mind that tile size can also have a sizable impact on rendertime, but the nature of this impact heavily depends on the scene and your hardware.


Scene changing optimizations

By using an arealamp to do the main illumination and dimming the letters, allowing the less-noisy area lamp do all the work, a lot of the noise is less noticeable. Adding a glare node helps cover the noise directly behind the letters somewhat:

enter image description here

Yes, the rendertime increased (thanks to the glare node), but now the result appears slightly less noisy.

Taking this to the extreme you could even make the letters visible only to the camera:

enter image description here

Now it's nearly at a point where you might be able to get away with 100 samples for the final render (you might still want to use 200-300 or so).

Other options

  • As mentioned above, use a renderfarm. Here's a list of renderfarms which support or even specialize in blender/cycles.

  • Render it overnight or in the background over the course a few weeks (perhaps using only a single core while using the computer for other things)

  • Bake the lighting for diffuse materials (only valid if no light sources are animated)

$\endgroup$
4
  • 1
    $\begingroup$ Full resolution at 55sec on a nvidia GTX970 GPU render on my end. 100 samples $\endgroup$
    – hawkenfox
    Commented Jan 30, 2016 at 10:16
  • $\begingroup$ @hawkenfox What tile-size? $\endgroup$
    – gandalf3
    Commented Jan 30, 2016 at 10:17
  • 2
    $\begingroup$ For animation keep in mind that not every frame has to be as perfect, if you are going to have 24 of them every second, you don't get to see each one for a long time... most important is to have a noise pattern that is not fixed and somehow tolerable. If you where to pause and examine most films that you like you'll see that not every frame is pretty... The crucial thing is not to loose focus on the story... $\endgroup$
    – user1853
    Commented Jan 31, 2016 at 2:07
  • $\begingroup$ Also it is extremely important to animate the noise seed for the samples. This will make the noise pattern different every frame so it will be less visible and behave more like a natural film grain. Just go to Render -> Sampling and press the little clock next to the Seed value. $\endgroup$
    – Simon S.
    Commented Nov 14, 2016 at 13:43

You must log in to answer this question.

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