The Blog

About Me


Marius Oberholster Hey! I'm having an incredible learning experience, not only learning how Blender works (yes, still learning), but also about Open-Source and the incredible software available. Stick around!

Speed up renders in Blender

Posted by Marius Oberholster on Monday, February 1, 2016 Under: Tips
Hey all!

Last week, I briefly talked about this topic as part of the latest update on the Esther 6 project - which you can read here. The reason for this post is to particularly focus on this topic and share some engine specific tricks that GOD showed me through personal leading and from a few articles, so let's get into it.

This will be mostly focused on Blender Render, as that is my engine of choice for the time, but I will talk about Cycles Render as well in another post - GOD willing.

Blender Render:
 - Turn off things you don't need under Shading:
Go into your Render settings and you'll find a section called shading. There you should be able to, in most cases, turn off at least Subsurface Scattering (SSS) and Environment Map. Anything else you can manage to turn off in this section that will not affect the render, do it. Just remember that this section is applied to all render layers, not just the selected one. This increased my render by about 30 seconds - aka by a third and the irony is that the project didn't even contain SSS or an environment map...

 - Turn off things you don't need under RenderLayers

Another big time saver. Generally, Blender gives you the combined and the Z-pass and leaves you the option of turning things off. Though it does leave quite a few things ticked that you may not even need, or use, such as Edge, Strand, Halo and Freestyle. Strand you may use for grass, since it renders faster than the physical grass, though does not reflect and has no shadow. Turning these inclusions off, lessens the workload greatly - these apply on a per renderlayer basis, so you can whittle out quite a lot.
   The next section applies to passes:
Whatever you don't need, has to go. On the left side, you usually have only Combined and Z enabled and everything that can be turned off is left on Specular to Refraction. For motion blur and masking and so on, you have to start turning things on and off on a very selective basis, but the big secret here is to turn off things that are typically included. For example, if you don't have any reflections in your scene at all, turn off reflections. If you don't have anything like water or vases that cause distortion of what's behind it (glass objects and water usually), turn off refraction. If your objects don't have specularity, turn off the specular inclusion - the same for ambient occlusion, environment lighting, etc. This will, again, reduce the workload.
   You'll be glad to know that you can also animate these settings to further decrease the render times. For example, only where you need reflections and refractions, you need to included it. Only where ZTransparency applies, do you need to include it, etc. I do caution you on the render layer aspect though. Animating this sort of thing too extensively can bring about many bugs that you don't realize is there. For example, when you have too many animations tied into one project (referring to actual animation, compositing animation and VSE animation of the same with time speed control), you really confuse Blender. Piece things out as far as you can while still working efficiently.

 - Turn down sampling for the world
   The world settings in Blender Render, offers you a few options that are very flexible in boosting your render speeds. If you use environment lighting a lot, like I do, for every project, you definitely want to use RayTrace and you want it as fast as possible. It says that Approximate is faster, but in my own experience, that was not the case for me - before it renders it calculates something occlusion oversampling or something and that takes for ever on big scenes, so I use RayTrace - it gathers and it starts. So that already gives you a speed boost.
   Another aspect is the attenuation and sampling. Attenuation, as it says, makes objects affect each other in an Ambient Occlusion sort of way. It's what the sampling is for - smoothness of these fading to darker areas in corners. The fastest way I've been lead here, is Adaptive QMC (had to go look it up). Adaptive QMC is a form of raytrace calculation that stops calculating samples based on the likely hood of it being visible in the render - this is controlled by the threshold setting. The higher the threshold, the sooner it quits sampling. The lower, the more it calculates. The total amount of samples given is it's ceiling, but it is more than willing to use less, if you tell it to and give you a higher quality at a lower time.
I personally set the threshold all the way up to 1, because it gives really strong black areas and high speed, but I also keep the samples to about 6. For a final render, this may go up to 7, but I actually like to take it down even to 4.

 - Turn down sampling on lights
In a way the same as the world settings, this one applies to lamps that you have that will use smooth shadows. According to a post on the Blender Wiki, using Buffer Shadows is faster, but not all lamps have buffer shadows. Most use RayTraced or none. So sticking with Raytrace is fine, just adjust it like you would the world setting:
> Low sample count
> Adaptive QMC
> High threshold
   Additionally, on lamps that have only 1 sample, the bare minimum, you can also increase speed, again by making it Adaptive QMC and setting the threshold to 1, but turning the shadow smoothness all the way down to 0. It looks like it'd be pointless, but Blender actually takes these values into account and makes a difference.

 - Reduce and Adjust Anti-Aliasing (AA)

Not something GOD took long to correct for me - the reduction I mean. For me there was so little difference between using 8 samples vs 5, that I quickly knocked it down to 5 and it became my default - big speed boost for very little sacrifice.
   Another aspect of AA was more recent and GOD had me look this up to, and that is the AA filters. I've found that tent is the fastest, because of it's simplistic nature (it calculates linearly) and I use it on a value of 1.5 when I have really fine textures that need some blending. Again, this too can be Keyframed for the sake of speed.

 - Texture baking
Sounds simplistic or silly to those of use who adore procedural textures, especially stringing them together elaborately in the Node Editor, but I'm telling you, the more elaborate they are, the longer they render and you definitely notice it on your render times. I learned that this was the case with procedural textures from friends on the Blender South Africa community on Google+ and it is also referenced in the Blender 2.4 post linked to at the bottom of the Blender Render section. I was lead to give this a try and oh snap, it literally cut my render time in half - in HALF!
Simple textures don't have that big of an effect, but baking anything you possibly can, while leaving the ramps deactivated, will boost render time significantly - especially in large scenes.

 - Tile size relative to render size
A big difference maker as well. For Cycles, apparently, you need to reduce the tile size if you use CPU and need to increase it for GPU, but in Blender Render, this is not the case. I've played with that and quite frankly, it doesn't play out that way there, hahaha.
   For 50% HD, I've found a tile size of 125x125 is the fastest for me. This may be fine tuned, but even the Auto-Tile Size add on is slower than 125x125 (with the target set around 128).
   For FullHD, I've found that 256x256 is the fastest. Again, this may be fine tuned, but again, the add-on is still slower, haha.

 - Turn off invisible particles
Not one I've tried before, but Andrew Price from Blender Guru has mentioned in his grass tutorial that Blender calculates particles that are off-screen as well, slowing down your render time. So if this is the case, which I believe it is, keyframe your particles' visibility so that when they are no longer on-screen, they are not calculated. Just be sure that if they cast shadows that you wait for the shadows to go out of view as well. An example for this would be a grassy meadow and the camera moving from ground to sky. When the ground goes out of view and you no longer see grass or plants or surface their shadows would fall on, you can keyframe them off.


 - Turn off what you can under Material settings:
This is not one I spend much time on, to be honest, but in the article from Blender Guru, there may actually be something to this, so I'll be adding some tips here for that as well that you can turn off and then you can tell me what the difference was solely based on material adjustments, apart from texture baking.
  > If you don't use reflections, turn off the mirror feature. In fact, keyframe it on and off as needed after you are happy with the final run
  > If you don't use refraction (Raytraced Transparency with an IOR bigger or smaller than 1), us Z-transparency and again, keyframe this off when you don't need it.
  > Under Options, you have only two typically ticked and that is Traceable (for shadows) and Use Mist. If you don't use mist in your scenes, turn it off. If your object does not need shadows, like a sun or moon, turn off Traceable as well.
  > Under Shadow, you have a few options. Particularly, I make sure I tick receive transparent shadows, because quite often you would make something like curtains and they would cast a pitch black shadow on objects where this is off and it's like wow... hahaha, so turn it on (it's off by default). If you find that your scene has no transparent objects in any way, go through and turn this off.
    AutoRay Bias - not recommended to turn this off, except for toon shading, as it solves a jagged geometry shadow problem that likes to show up in the form of a staircase along the shadow line. If you aren't doing toon shading, leave this on.
    Cast is for the object to cast RayTraced shadows. Cast Buffer Shadows is literally for lamps like the Spot Lamp that casts buffer shadows. If you're not using Buffer Shadow lamps with an object like this, turn it off.
    Cast Approximate is the same. Since I totally recommend using RayTrace instead of Approximate as your gather method, you can turn this off too.
Honestly, for one or two materials, I don't think this will make such a huge difference, but if you are able to maximize this in your scene, I believe it may give you a few seconds, which does add up over big animations.

 - Conclusion
Basically the principle for a faster render is:
 Do your research on what features do what, and turn off as much as you possibly can that has even a remote chance of calculating in the background without real purpose or result. Turn off things you don't need and keyframe those that can save you time that you can get away with that will not make a negative visual impact. Such as the shader options and particles as well as reflective surfaces and so on. You'll be glad you did!

Sources:
 - GOD's personal leading through the HOLY SPIRIT
 - Blender 2.4 post on the BlenderWiki
 - Blender Reference Manual - Anti-Aliasing
 - Google+ Community - Blender South Africa
 - Blender Guru - 13 Ways to reduce Render Times
 - Blender Guru - 4 Ways To Speed Up Cycles
 - Blender Guru Nature Academy Grass tutorial

Thank you for reading! I totally recommend you check out the sources and do further digging to find more tips on speeding up your renders for whatever engine you use!

Have a great one and GOD bless!!

In : Tips 


Tags: god  jesus  holy spirit  blender  speed up blender render  bi  speed  render speed  speed up 
Social
(+27) 073 104 2834   |   marius.oberholster@gmail.com   |   Contact

Make a free website with Yola