Deep Learning and AI

An Introduction to Render Farms for CGI

October 5, 2021 • 9 min read

render-farms.png

What is a Render Farm?

Creating a video with computer-generated graphics takes a ton of computer processing power, but what does that really mean?

In simple terms, to create something like a CGI (computer-generated imagery) animated film we’re talking about multiple computers working in parallel to go from working model to final product. This set of computers is called a render farm, and this is where most of the processing power is required.

A Basic Look at CGI

Whether we’re talking about a short student film, CGI special effects in a big budget movie, or a commercial with animated characters there are a number of basic steps required to turn an initial concept into reality. This isn’t going to be an exhaustive explanation of what happens, but we’ll look at some of the basics.

The primary unit of computer-generated images is the polygon, a 2D geometric shape with at least three sides made up of straight lines. Computer animators and special effects artists create objects that are built of these polygons. This can be a table, a lamp, a tree, a dinosaur, a talking teddy bear, a spaceship, whatever.

Dolphin_triangle_mesh_cgi_polygon.png

Polygon mesh for CGI using dolphin as example, Source

The basic sketches of each object, often called a wireframe, don’t look particularly realistic and are the digital equivalent of a comic book character’s rough pencil drawing before it gets color and shading.

Then, through a process called rigging or animation, the objects are combined into basic frames until you have the initial version of the scene you’re creating.

Once the basics for the scene are in place it’s time to take it from 2D image to a finished 3D CGI product via the rendering process. This is where the objects in a scene get their finished looks by adding textures, color, shading, and shadows.

One of the most crucial parts of rendering is the lighting. It takes a lot of calculations to decide how light bounces off each object in a scene to create the right look of the colors and shadow.

Rendering takes such a heavy toll on computer resources because it requires an absolute ton of calculations to solve problems associated with geometry, vectors, coordinates, and matrices. Every move of the virtual camera helps decide the perspective of the scene, as well as the movements of each character, and that requires serious calculations. The math decides how much shadow is cast by a lamppost or rock, or how hair responds to wind. Everything that you see on the screen in computer animation is the result of some kind of calculation, and that’s why it takes so much power to render.

Consider, for example, Pixar’s animated film, Luca. A website from Boston’s Museum of Science dedicated to the “Science Behind Pixar” reports that it took about 50 hours per frame to render an early scene from the film.

luca-disney-film.jpg

Disney film Luca, Source

The scene in question is 24 seconds long. Since each frame of a CGI film has about 24 frames we’re talking about 576 frames that took a collective 20 days to render for less than half a minute of the film! Spreading such a big task across multiple computers to reduce production time is why render farms are such a key part of the CGI process.

To Render Farm Or Not To Render Farm?

Not everyone is trying to create something as detailed as a Pixar film, and animators do render their own projects on powerful home PCs. Even then it still requires hours of processing. 

Take, for example, this experience from the YouTube channel Brandon’s Drawings. In the video, Brandon compares the value of using a render farm service versus rendering on his own machine.

For the test, he uses a 460-frame (19 second) video at 1920-by-1080 (1080p) resolution. The video took 14 hours to render on his own computer equipped with an NVIDIA GeForce RTX 2060 Super graphics card, a 10-core, 20-thread Intel Core i9-10900X, and 64GB of RAM. That’s a powerful home PC, and about the top end of mid-range desktops at the time of this writing.

Despite that much power, however, the rendering time was still more than half a day and that’s with the PC dedicated exclusively to this task. You wouldn’t be playing a game or even streaming Netflix during the rendering job.

Now when Brandon took that same video to a render farm with a medium tier service plan the job took 22 minutes and 10 seconds. Again we see the difference between rendering on a single computer and a render farm.

The Render Farm

Most render farms use the same basic setup: a set of connected computers do all the rendering while another computer manages and coordinates the tasks for each node within the render farm. The computers that are part of the farm can be server boxes sitting in racks much like a data center, they can be specially configured cloud servers from a provider like Amazon Web Services (AWS), or they can be a few machines sitting in the corner of an editing suite.

diy-rendering-farm.jpg

    DIY render farm built from old pc’s, Source

    How many computers are in the farm is important for performance, but it’s less important when talking about what a render farm is. The key point to remember is that a render farm has multiple computers available to work together on a given rendering project. In general, the more computers a farm has for rendering, the faster it can get the job done.

    Each rendering computer on a farm is typically referred to as a node. The term “node” comes from computer networking and just means a computer within a network. So every time you see a reference to a render farm node just substitute “a computer (connected to a bunch of other computers)” to get a more practical understanding of what we’re talking about.

    Types of Render Farms

      There are a number of different types of render farms. There’s the homegrown render farm that a person or company puts together by buying the hardware themselves. This can be like our earlier example of a few computers that a local CGI team has sitting in an office closet, or a big production company like Disney with thousands of computers across multiple sites.

      Self-managed render farms require a healthy amount of technical expertise and skill to run properly. For individuals or smaller businesses not interested in taking on the costs required for a DIY render farm another alternative would be third-party services such as Fox Render Farm, GarageFarm or RebusFarm. These services usually work by uploading a project via a web panel, configuring the number of nodes needed for a rendering job, and then starting the render. Typically, these companies also have support teams to help when issues pop up.

      Somewhere in between the DIY solution and third-party services is something like AWS that can deploy a render farm to the cloud in a few clicks. Creating a temporary network requires a little more knowledge than a third-party service, but provides greater control over the computers within the virtualized render farm.

      Why “Farm” at All?

      The mythology around the term render farm is that it started out as a private joke in 1990 and later caught on as an actual term. At the time, the software company Autodesk was working on the first edition of Autodesk 3D Studio, a CGI creation program. To promote the program the company created an animated short called the Bored Room.

        As is usually the case with tech companies, the team had to come up with a creative way to meet a difficult deadline. So they used a bunch of desktop computers to handle rendering. The computers weren’t networked to each other so each computer was set to render a specific set of frames, and then each finished frame would be copied from that computer.

        During this time the team member who took care of the group of computers, Jamie Clay, usually wore bib overalls to work. Since he looked the part of a farmer, team member Bob Bennett started joking that Clay was farming frames and the term “render farm” was born, or so the legend goes.

        The Final Render

          The render farm has come a long way from a room full of non-networked desktop computers pushing out frames in order to meet a looming deadline. Today the render farm can be a massive, multi-site data center, a set of cloud computers, or something closer to the original like a bunch of computers sitting on a desk.

          Regardless of size the basic principle is the same: a group of computers working in tandem to produce CGI animation for short films, feature length CGI films, special effects, or television commercials.

          Render farms aren’t out of reach for budding CGI artists working at home, either. With many online render services out there people can take their idea from Blender or Autodesk’s 3ds Max into a finished product with just a few clicks.

          With computer animation becoming more advanced all the time, the render farm is a key tool for any CGI artist.

          Looking For More Industry Info on CGI and Rendering?

          Whether you are ready to build your own render farm or use a render farm service, we hope this article has given you the info you need to get started with render farms. Please feel free to comment below, or send us a question if you want to know more.

          You can find other articles of interest elsewhere on the SabrePC blog. If you have any questions or want to suggest some topics for us, please feel free to contact us.


          Tags

          ai

          render farm

          rendering

          cgi

          graphics

          hpc

          pixar



          Related Content