WHEN YOUR CREATURE IS… A PARACHUTE
Fred Chapman, Head of Creature (Vancouver) at DNEG, details the creation of the parachute cloth for a key jump sequence from Deadpool 2
Layer 1: animation
For this scene we built parachute animation rigs that gave the animators control to pose the general shape and position of the parachute and its attachment to the X-force member. The model and rig needed to be created so that the ropes stayed straight, as they were always under tension.
The model for this rig and animation layer should be quite coarse as it is just used for the primary placement and shape, not for any details of the cloth. It also doesn’t matter if the cloth deforms a little in animation as the later sim layers will correct for this. When the animation is ready it can be written out as an alembic cache to keep future layers clean and fast. It also allows us to update the animation input into the cloth layers by reading in different caches.
Layer 2: Base cloth sim
It’s time to add our base layer of nCloth sim. This layer will be on the same lowresolution mesh, and will form the coarse movement of the cloth, affected by gravity, drag, wind, turbulence and any collisions. Constraints were added to the ends of the base parachute so that it would follow the anim cache. Other constraints were added to this layer to attach the ropes, and to help preserve the volume of the parachute when needed.
During each shot, the constraint values can be animated to give greater or lesser amounts of attract to the animation depending on whether those areas should look under tension and more rigid, or looser allowing more reaction to wind and other forces. If collisions or self-collisions are needed they can be added to this layer as the low resolution means they can be calculated much quicker than on the later higher-resolution layers.
Layer 3: Ripples
Now that we have the broader movement of the cloth added on top of the animation, the next layer to add is the ripples. Because the ripple layer doesn’t need to react to the movement of the parachute in the scene, we don’t need it to be sim’d in situ. We’ll create a duplicate of the model at the origin and use a wind force to create the smaller ripples. Once we’re happy with the look of the ripples, a blendshape can be used to add the ripple motion on top of the base cloth sim on the parachute.
One thing to also remember during this process is that simulations such as cloth can be time-consuming to process – those many iterations add up to a lot of time, often time that we don’t have available. So it’s important to us that as well as looking good, our processes should be fast, and give us lots of control over the output.
Layer 4: wrinkles
We have a mesh with both coarse and medium-level cloth detail that follows the animation, so our final layer is the very fine wrinkle layer. This layer adds dynamic cloth wrinkles to maintain surface area where the cloth surface compresses. As the detail is much finer than the previous layers, we need to subdivide the parachute mesh by smoothing 1-2 levels on both the output of the ripple layer and our wrinkle nCloth mesh.
We use an input attract between the ripple mesh and the wrinkle mesh with a value of around 90% so that the wrinkle mesh follows all the previous layers. We don’t use any additional forces on the cloth but we do set the stretch and compression resistance of the cloth to be much higher than in the base sim. This forces the cloth to stick to the ripple layer wherever possible, but still form natural-looking wrinkles as the cloth moves around.