picture by Steve Jurvetson

CG Pipeline: A Proposal For Your File Hierarchy

Frank Rousseau
CGWire
Published in
3 min readMay 15, 2017

--

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 find his way.

In a perfect world, you would use a dedicated datatabase 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 to maximize readiness and compatibility with software and tools.

The Root folder

Your root folder name should be very explicit composed of 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 to 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 miriads 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 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 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 to use 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 leads to file duplication and sometimes more process 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 in efficiency 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 pipeline 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!

--

--

Frank Rousseau
CGWire
Editor for

Founder of CGWire, Software Engineer and CG Lover