CG Pipeline: A Proposal For Your File Hierarchy

File storage is still a big issue for any CG production. The many softwares involved lead to a constellation of files in which it’s hard to…

7 years ago   •   3 min read

By Frank Rousseau

File storage is still a big issue for any CG production. The many software involved lead to a constellation of files in which it’s hard to find his way.

In a perfect world, you would use a dedicated database where files can be queried, accessed, and stored through their metadata. Unfortunately, most studios cannot afford to set up this kind of solution. The simplest alternative is to rely on a classic file system. But to avoid any confusion, it’s mandatory to enforce a file system structure. This is what we propose to discuss in this blog post.

Note that all our paths are written in lowercase, without special chars or space. These rules allow maximizing readiness and compatibility with software and tools.

The Root folder

Your root folder name should be very explicit composed of the productions folder and the name of the production:

productions/big_buck_bunny

The state folders

Before describing our content We need one folder for the working files and one for the published files

productions/big_buck_bunny/working
productions/big_buck_bunny/export

The type folders

In your production, you will mainly build assets and shots. So let’s separate clearly these two concepts:

productions/big_buck_bunny/working/assets
productions/big_buck_bunny/working/shots

The asset folders

To fold properly your assets, we propose you make folders by asset categories. Then each asset should have its distinct folder. Finally, we think, it’s better to have a directory for the main steps of the asset building. Don’t be too specific or you will end with myriads of folders:

prod...ing/assets/characters/rabbit/modeling
prod...ing/assets/characters/rabbit/rigging
prod...ing/assets/characters/rabbit/texturing

The shot folders

The folders should describe the shot hierarchy (episode/chapter, sequence, and shot). Then for each shots, we store the files in a folder describing the main steps of the shot building.

prod...ing/shots/ep001/se001/sh001/animation
prod...ing/shots/ep001/se001/sh001/fx
prod...ing/shots/ep001/se001/sh001/compositing

If you don’t have an episode or chapter you can skip the ep001 folder.

The main issue here is sometimes you have to deal with animation running on several shots. We recommend using either symbolic links or to work only on the first shot concerned by the animation.

The asset in a shot folders

It happens that variants of assets must be done for a specific shot or that animation is built separately for each asset. In that case, we create an assets folder inside the shot folder. In that folder, we’ll create a folder per asset. No need to add a folder for the asset type.

prod...ing/shots/ep001/se001/sh001/assets/rabbit/animation
prod...ing/shots/ep001/se001/sh001/assets/rabbit/modeling

File naming

It’s better to transcript all the information in the file name too. In some software, only the file name is displayed in the window title. So, it’s better to make it explicit.

asset:

big_buck_bunny_assets_characters_rabbit_modeling.max

shot:

big_buck_bunny_ep001_se001_sh001_animation.max

asset in shot:

big_buck_bunny_ep001_se001_sh001_rabbit_animation.max

Departments and specific file hierarchy

Some departments may have different ways to deal with files. It can be a good idea to have a different file hierarchy for each department. In that case, make sure to document it properly.

Final words

That’s it! With this simple file hierarchy, you should be able to store properly all your files. Which means less headache and less stress for your next productions.

Enforcing a file structure can lead to file duplication and sometimes more processes for your CG artists. You shouldn’t be scared of that. The file structure is part of the communication between people. And in a project, good communication is what matters the most. So it’s better to accept minor drawbacks. You will gain much more inefficiency when looking for the right files.

Even better, it will allow you to develop tools that will be able to work automatically on your file system. Pipeline tooling is mandatory to scale your studio. In later blog posts, we’ll give you ideas on what to build and how to make it.

Writing mainly about production management and pipelines doesn’t mean we don’t enjoy looking at beautiful pictures too. If you would like broader topics and curated content about the CG industry in general, you can follow us on Twitter!

Spread the word

Keep reading