Depth and breadth of shot folders

Infinity... by shioshvili, on Flickr

This photo, “Infinity…” is copyright (c) 2002 shioshvili and made available under a Attribution-ShareAlike 2.0 license

A brief digression on the topic of folder hierarchies for VFX sequences, shots and the like.  Obviously many shows and studios use some form of ‘[path_to]/show/sequence/shot’ but I’ve always wondered if there was any good criteria for establishing the shot folder structure.  One such criteria is implicit and is of course the structure itself, which is to say, a fixed set of rules that is common to some unit like a shot folder; see also file naming conventions, of which a good discussion can be found here: http://hydrofilm.com.ua/2010/10/25/file-organization-and-naming-in-vfx-project-a-short-dive-in/.

I’d like to think another criteria is readability.  For example sequences usually, though not always, have names.  Indeed, you might be surprised to learn that there have been animated features where sequences were purely numerical.  Doesn’t sound too bad except that there is or was no guarantee that sequences appeared in the final film in numerical order.  This often led to ‘that scene’ in which ‘that thing’ happened, and many trips to those production oracles who had internalised the numbers and effectively become human search engines.

Giving sequences names like ‘ET Goes Home’ instead leads to an abbreviation (etgh) and names for the shots associated with the sequence (etgh010, etgh020, etc.).  This is something the author of the article above does too: use abbreviations that help with readability, including an established schema for 3D passes and user names (amongst others) in file names.  So certainly readability seems to be a criteria in good file / folder naming conventions.

Ah but if only it were that simple.  The depths to which some searches lead for sub-folders nested at infinity is nothing short of epic.  There is so much to choose from: departments, software packages, artist names, workflow steps, render passes, tests and on and on, clearly temptation is rife.

I was delighted therefore to find a paper titled “The effect of folder structure on personal file navigation” (which you can download from the publications link here: http://www.biu.ac.il/faculty/oferbergman/).  In it the authors investigated the relation between users’ folder structure and personal file navigation, looking at the retrieval time and success rate of participants of the study.  The three parameters under consideration were folder depth, size and breadth (number of subfolders); and of course there was going to be some sort of trade off between large shallow folders and small deep folders.

The researchers found that each additional folder step increased retrieval time by 2.236 seconds, whereas for an additional file in a folder it was 0.106 seconds.  Divide the two and you get a ratio of 21, or what they coined the up to 21 heuristic.  That is, each folder deeper equals about 21 files in terms of retrieval time.  What is interesting however was that they found the mean folder size of their participants to be 22 files with 67.3% of all folders containing up to 21 files.  In other words, people arrange their folders and sub-folders this way intuitively: most folders will have about 21 items in them, at which point sub-folders take over.

The 21 rule makes for another good criteria in deciding on folder structures.  For example, we might avoid using a 2D and 3D folder, and place all application folders at the same level.  We can also feel comfortable having 21 non-folder items at the shot level if they are common to all shots.  For example, if all shots feature a reference clip this need not live in its own folder called ‘ref’ since doing so increases retrieval time unnecessarily.

For the VFX project at hand, then, I will be using a shot folder structure in which as many folders sit at the top level within the shot folder (21 rule) as is possible (readability, structure).  In particular, this is the current shot folder structure:

  • after_effects: after effects scripts
  • plates: original frames (or movies) with handles
  • mattes: e.g. matte generated from mocha for use in nuke
  • maya: maya project folder
  • nuke: nuke comp and precomp scripts
  • paintings: matte paintings
  • photoshop: photoshop files
  • reference: any reference material for the shot
  • renders_3d: 3d passes
  • renders_comp: rendered shots for approval and nothing else

Written by admin

Leave a Reply