Hi dudes, thanks for the kind words!
About the pipeline… It’s pretty simple really, Tristan generally works in Max and Zbrush, so when doing the models, he’ll export an OBJ which gets brought into Blender. In the case of the cliff, the client approved the look of it in Zbrush so rather than bothering with displacement, we just exported a 200k poly mesh with a normal map and used that directly.
Within Blender, everything’s linked and instanced (the models, the configuration in a set, the materials, the character and rig setup). It’s like xref in Max but a lot more powerful since any bit of Blender data can come in linked from an external library file (including animation curves and actions, and abstract groups of objects).
So for example in the lighthouse lens room shot files, we have a linked group of objects for the main set coming from a library that contains all the models, materials etc in a group. In the shot file itself, this group just appears as one block, un-editable. Then we have a linked group for the character, which has all the models, materials, hair, and rig, and that rig can be posed and animated via a proxy. The main rig and character data remains in a single library file, but the animation data - the poses and curves themselves, reside locally in the shot file. Also, the lens itself is treated like a character, with it’s own rig that lets the lighthouse keeper open the door, pick it up, etc.
The upshot of all this is, that everything’s instanced cleanly. If we want to change the position of a prop in the set, or add or remove objects, we change it once in the library file, and it ripples through and updates in all the shot files that use it. And we can do this with the entire character setup too. We can change the models, hair, rig, whatever in the character library, and it updates throughout. So if Jeremy needed to add extra controls to the rig, or fix something that’s deforming incorrectly, he does it once, then it updates for any animator to use in the shot files.
This also makes it easy working with models coming in from outside. If we need to change a model, we just bring the new OBJ into the library file. Especially with characters using the mesh deform system, where it’s only the low-poly deformation cage that’s rigged up to the skeleton, most of the time it’s just a matter of bringing in an updated model to the character library, clicking a button to re-bind it to the low-poly cage, and it’s ready in all the shots.