Discussion regarding rendering short films and render farms

Hi all,

I wanted to get your opinion regarding the best way for rendering a short films (between 2-4 mins), about 3000 frames, I own i-9 , 32gb plus RTX 4080, each frame takes me between 2-3 mins, the scenes are about 800,000 tris each with multiple lights and a world hdri.

This will take me 5 days to render :laughing:

Looking at render farms costs for rendering will be around $2500. EDIT: got the numbers wrong all in all under $800

First question, is this normal? Haha

Second, how do i should go about it? How does big companies goes about it to render full length films?

I will appreciate your input.

hello,
big companies usually have their own “render farms”
maybe it’s just me, but 5 days doesn’t seem that much for 2-4 minutes of animation :hushed: can’t you render during the night? I’ve had way worse render times

I’d shop around for render farms, that seems pretty steep.

I’ve used renderstreet in the past, they have an unlimited plan for $60/month. It’s lower priority than their other tiers, but it’s still pretty effective.

For what it’s worth … i don’t find that timeframe to be particularly crazy, especially on a single machine.

But of course - sometimes deadlines are a thing, and one might not have 3 weeks worth of overnights to do it alone.

I assume you are in Cycles?

I am wondering if your render settings or scene are poorly optimized or if you have a lighting scenario that’s especially difficult. I have rendered Cycles projects with similar render times on a GTX 1060.

  • What is your render resolution? This has a massive impact on render time, as doubling the resolution multiplies the number of pixels (and render times) by 4x.

  • What are your sampling settings? If you are not familiar with how to optimize them, you might be way over-rendering.

  • Is this an interior scene? Those usually take way longer to render and are noisier (especially if there is sunlight coming in through a narrow window).

  • Are there lots of transparent objects? If you have plants with alpha transparency leaves, that is slow to render in Cycles. Cycles doesn’t do well with many layers of transparency, it actually renders fully polygonal leaves faster even if you have many times the polygon count.

  • Do you have volumetrics, in particular fog? Volume fog is slow to render and messy to denoise. This can be drastically improved by rendering it and denoising it as a separate pass (the fog denoises cleaner without a background, and the main pass renders faster without fog). If you know how, you can even render the fog in Eevee, as it does an excellent job for that.

  • Do you have light coming in through glass? Did you disable the glass’ shadow? If you haven’t you should, light going through glass in Cycles is very noisy.

  • Do you have modifiers that are disabled in the viewport but visible at render? Subdivision modifiers with higher render levels than viewport? Check those and see if the levels need to be that high, you could be rendering a much heavier scene than the polygon count shown in the viewport.

  • Are you using loads of procedural textures? Those are computationally heavy, as they need to be calculated on the fly during render. If you do, you might want to bake what you can to image textures.

That’s not a very high polygon count for Cycles.

In Cycles, materials and lighting have a much bigger impact on render times than polygon count. You could have an untextured model with 30 000 000 tris lit only by a sky background and it would render surprisingly fast. But an empty cube room with a small spot of sunlight on the ground could take longer because of the sheer number of samples that would be needed.

Anyway, I could help you optimize all those things more specifically if I could see what the scene looks like and what settings you are using.

I had a look and that is a good option but my deadline is coming and i think it might be too tight for this project :yellow_heart: but good to know!

Hi!

Thank you for your answer, resolution is a big factor and this video is playing on a vr headset which force me to use minimum of 4k frame to avoid low quality display on the headset.

Sampling is set to 512 with noise threshold and denoise in the compositor.

I have a lot of trees in the scene which results in lots of alpha clip transparancy also, i have tried to keep light samples to a minimum without getting black transparancy from the overlaps, reducing it drastically did not really effect rendering time.

No volumetrics or light through glass, no modifiers accept for armatures and no procedural textures (altough there are quite a bit of pbr textures)

It is an outdoor scene with lights dotted around to highlight certain areas but i did notice that the hdri depends on the image can really effect the render times.

I think I’ve done a lot to try and get it to the best i can without compromising the quality, and I think the amount of textures and lighting in the scene are the culprits (persistant data ticked on helped with rendering times as well - not sure what it does exactly)

persistent data prevents Cycles from reloading things that haven’t changed each frame. When you start your render, there is a build phase where all the models and textures are loaded and that gets repeated every frame for every bit of data if you don’t use persistent data. Useful if you have long build times.

I would guess this is a major culprit.

Are those trees instances where you can alter the base model and they all get updated? If yes, one thing you could do is physically cut the empty transparent areas around the alpha leaves. This greatly reduces the chances that any light ray will go through multiple layers of transparency. No need to be as close as my image, even a rough job will make a difference.

If you cannot do this, I have an other trick you can try in your leaf material. Add this setup at the end of the material:

This will cause all diffuse rays (indirect light boucing from solid objects) to perceive the foliage as a flat, non transparent diffuse material that’s much simpler to render. I have had a scene where it accelerated the render by a noticeable amount. It can change the look of the foliage a bit, so you might need to experiment with the exact shade you use for the diffuse, so it’s as close as possible to what it was.

With the resolution you have, I am going to guess that the denoising takes quite a long time. Try to switch its pre-filter to “none”, that mode is much faster. It’s also the mode that gives the sharpest results, it’s just that it can leave a small amount of noise on reflective surfaces.

Thank you! I have learned something new today :yellow_heart:,
I have sent it to render on a render farm and i think i got the calculation wrong so it will be much less expensive and in budget.

But i must say that i have struggled to manage the project because of the lag in the viewport and being unable to see animation in real time, adding to that long rendering times made me thing how the hell big companies do create those mega animation films. I know my machine is not optimized for blender and definitly not at the top but i thought it will be easier.

I dont understand why blender is not using the gpu in viewport and modelling and just uses it for rendering?

So not that long then.

They have a room full of computers (server racks) that do nothing but rendering and a persons whole full time job is to mange it all.

Depending on your needs and how often you find yourself using a render farm, it maybe worth looking into making a small one yourself.

At the end of the day, it’s just hardware and software. A general software setup for a solo person is easy, you can just use what the Blender Studio uses (https://flamenco.blender.org/).

As for hardware, it can be anything from old computers with maybe some minor updates, to a second hand PC (with or without some updates).

It doesn’t need to be as top line as your main PC, even if that means it’s slower, it’s still running on the side, while you can fully work on the main PC. While if you need things done faster, then you can kick both PC’s going.

So at some point, after spending $100’s on 3rd party render farms, that same money would buy your own that you can use endlessly.

My only advice would be to reasonably match hardware types. So if you are CPU rendering, then get much the same system RAM. It doesn’t need to be the top spec fastest (for general rendering it wouldn’t make any real difference), just the same amount. That way you know if it renders on your main PC, it will render on the second one.

Or for GPU rendering, then ideally same make, type and amount of VRAM.
So rather then a matching 4080 (tho you could), instead maybe a 4060 Ti 16GB. Yes it will be slower, but it’s still Nvidia, still using OptiX to render (there are very minor differences between a frame rendered using the CPU or a GPU or even a GPU with a different API, like CUDA or OptiX). So you want the base tech to all be the same for an animation that has frames being rendered on different PC’s.

However, the VRAM amount is the same, at 16GB, so if the 4080 can render it, then the 4060 Ti 16GB can too.

Blender does use the GPU to display the viewport, but the CPU first needs to calculate the position of objects and send that data to the GPU so it can be displayed.

If you can’t play the animation in the viewport, I would suspect modifiers. They need to be re-calculated every frame, so turn off all the modifiers that aren’t needed for the animation. In fact, disable any object that’s not needed for the animation while you work on it. You can bring back everything when working on the lighting and rendering.

Also on that note, I may have a video that can help:

Exactly.

A single frame in Avatar took several hours to render.

https://www.datacenterdynamics.com/en/news/avatar-the-way-of-water-was-rendered-in-amazon-web-services/

2-3 minutes a frame? They would have loved that. :wink:

Thank you, that is super informative :yellow_heart::yellow_heart::yellow_heart:

Haha amazing!

I remember reading that Interstellar took centuries of render hours to do, and ending up having multiple petabytes of data on the rendering server

Fun blast from the past: Foundation Imaging (star trek, etc) built their own server farm… Basically they went to Home Depot, bought sheets of pegboard (like you use in your garage). Bolted motherboards directly to that (no cases), then slid them stacked into… Basically a shelf.

Cheap but effective…

I once had a single image taking 14 days to render (in the 90s, not Blender). When done, I was like “oh no, I forgot to turn the shadows back on”.

Render in the SheepIt free render farm for Blender.