I designed the fx/render pipeline for the "Elsa's Blizzard" sequence in Frozen. 10 effects animators used this pipeline in order to make snow storm effects in 45 shots.
In order to render very thick and heavy snow storm obscuring characters, Elsa's Blizzard was composed with 6 particles and volume layers. I made this pipeline manage all of the fx/render/publish processes. It included houdini set-up, material binding, render controls, lighting, compositing. In order to set up the pipeline, I picked a shot which where we have the most extreme camera movement. In the shot, camera frame covers the largest area of the scene. This shot was effects-animated and finalized by Christopher Carignan.
FX Elements were instanced on simulated particles which was called as driving particles. When the pipeline set-up script was run, it loaded all obstacles which are boats and ships stuck on frozen fjord. It created a flow field around obstacles to make particles avoid collision. Camera animation was loaded to generate camera frustum geometry to cull out particles throughout the frame range. It allowed artists to focus on designing and choreographing overall motion of blizzard storm with relatively light geometry.
In order to cover huge area with countless number of snow particles, I had to set up very optimized way of particles and volume rendering. I used Renderman's DRA(Delayed Read Archive) technique. Driving particles loaded pre-simulated particles and volume at the render time. Both of Blizzard Storm Particles layer and Blizzard Storm Volume layer used same driving particles.
After instancing hundreds or thousands of volume containers, I added a rasterization process in order to optimize the memory in render. Volume rasterizer had LOD optimization option. Volume rasterizer was developed by our software engineer Lawrence Chai.
Along with the multi-level DRA instancing, I exposed the individual particles controls up to the highest level. Artists had additional controls like multi-pointing, size and velocity multiplication per individual instanced particles without touching the cached sets of pre-simulated particles. This feature was supported by Renderman's RI Filter technique.
I made the pipeline run script to set up render layers, material bindings, render optimization and composting set-ups, when it's executed. Since layers of volume and particles were very heavy to render, render optimization per render layer was essential. The pipeline provided artists default nuke preset for compositing. With these unified set-ups, 10 artists can match the final looks of snow storm in 45 shots.