For our short movie, we had setup a pipeline to work efficiently with a remote team of 6, reducing the need of handling conflicts of modified files.
First, here is a excerpt of our production tree view :
Everything is version controlled by a svn server, which has the benefit to handle “locks” to protect currently modified files by someone.
To avoid the use of “locks” to often on frequently used files, every assets (scene, props, characters, etc…) is created in its own file. Then everything is regrouped in global scenes (sceneA, sceneB, … in our example) with “links”. A “link” create a reference of a source so that the modifications performed on a source object are transmitted to files which refer to it.
With this link system, each of us can practically work independently on a file without creating a conflict (links can also be chained.).
Note that it is convenient to link groups instead of objects. By this way, in a source file, adding and removing objects of a group won’t mess up links already set up. Therefore, linked groups are referred with an empty which can be moved, rotated and scaled.
In the file tree view, we have for every shot a global scene file (sceneA, sceneB, … in our example) with all the assets linked. Directly from the global scene, we can open the original file of an asset and return to the global scene easily with the add-on Edit linked library. With a big tree view project, this add-on turn out to be very useful for file management.
Note for animation
For animation files, an animator can work with asset under production with a proxy rig. As long as a rig is not modified, it allows to modify the geometry or materials of a model without breaking the animation. By this way, a proxy can be linked in many files for many different animations. With this setup, the animators can work on an animation without waiting the final version of an asset. They can also use a proxy mesh to have a low poly version using the same armature. It allows to have better performance to start an animation and then the final model is used for the clean up step.
Here is an overview of the file management:
If you need more information about our pipeline, feel free to ask.