by Curtis Andrus

23 September 2019

Flesh Dynamics and Intersection Cleanup in Detective Pikachu

This talk was originally created for Siggraph 2019 but was not submitted for consideration.

Authors

Curtis Andrus (MPC R&D)
Koichi Tamura (MPC R&D)

 

(L-R) MR. MIME and JUSTICE SMITH as Tim Goodman in Legendary Pictures’ and Warner Bros. Pictures’ comedy adventure “POKÉMON DETECTIVE PIKACHU,” a Warner Bros. Pictures release. Courtesy of Warner Bros. Pictures

 

 

Abstract

In order to enable the simulation of flesh dynamics, and simplify the process of intersection cleanup for the numerous CG characters in Detective Pikachu, MPC R&D developed a new tool called Sumo.
This allowed us to automatically handle effects on a large volume of shots that would have previously required hours of artist work.

 

Background

MPC Film’s work on consisted of many shots with a large number of fully CG characters. TechAnim artists would have spent several hours per-shot cleaning up the character geometry (e.g. self-intersections and intersections with external geometry). To achieve the right level of realism, we also needed to simulate secondary motion coming from muscle and fat.
To solve this problem, MPC’s R&D team began developing a new tool called Sumo. For seamless adaptation, Sumo needs to fit into our existing rigs.
Rigging artists already had their own tools for muscle simulation and a deformer to simulate skin details such as wrinkles. So we focused our efforts on building a dynamic fatty layer in between.

 

Implementation

We implemented Sumo as a Maya deformer operating on a tetrahedral mesh generated from the input surface. We chose to represent this as a non-manifold mesh in Maya, so they could be manipulated with existing Rigging tools.

At each simulation step, constraints are resolved by an iterative process consisting of a local and global step. In the local step, constraint energies are minimized independently and in parallel. The global step consists of solving a pre-factored sparse matrix equation in the position variables.

We implemented the following constraints in our local step:

  • Strain Limiting and Volume Preservation
  • Vertex Pinning
  • Attraction to an Input Mesh

 

We found that the local step worked very well for soft constraints. Constraint stiffness could be painted to vary over the geometry.
To handle collision and other hard constraints, we implemented the Uzawa CG method to resolve some constraints in the global step. This was critical for resolving self-intersections in relatively few iterations.
Sumo also simulates friction by applying a post-process to reduce the velocity of any particles in contact with a collision object.

 

Animated Input Geometry

To fit in with our existing rigging tools, Sumo needed to support animated input shapes. Current rigs focus on deforming the surface, so they won’t support tetrahedral meshes out of the box.

We found that we could run solver iterations with zero momentum, pinning the surface vertices to the animated surface, and only applying strain to the interior vertices. We ran this independently of the main simulation. Animated collision objects were handled similarly, applying our “relaxation” step whenever the mesh was updated.

Whenever the rest configuration of the tetrahedral mesh changed, we simply rebuild the system matrix. We found that rest shape changed infrequently, so the implementation simplicity outweighed the performance hit.

 

Production Results

To integrate Sumo into our rigs, Rigging artists first built a model describing the rough volume of the character. We then tetrahedralized this mesh, and passed the result to Sumo. Other meshes such as muscles were connected into the deformer via pinning or input attraction, so they could drive the overall animation of the sumo mesh. Once that’s done, the final skin geometry was bounded to the Sumo mesh using our skin deformer, which also handled simulation of wrinkles.

Sumo before (left image) and after (right image) comparison on test asset

TechAnim artists would also build Sumo deformers into their scenes to handle collisions with external geometry.
This setup proved to be very stable in practice, successfully removing collisions without any manual intervention on hundreds of shots. Sumo has been proven very helpful for other shows as well, and adaptation of the tool has quickly spread.

 

Future Work

Given the overall success of the tool, we definitely intend to develop it further.
On the usability side, we would like to provide setup helpers that make it more straightforward to apply Sumo to a new character.
We also found it difficult to handle conflicting hard constraints, especially collisions interacting with our input attraction constraints, where sometimes we saw jittering. We’re actively looking into improvements for these.
Finally, we want to explore applications of ADMM in other areas, such as fur, cloth, and potentially as an improved version of our existing skin simulation tools.

 

Acknowledgements

The authors would like to thank Eve Levasseur-Marineau, MPC Film’s Rigging and TechAnim departments, as well as Gagandeep Singh for their input and assistance.

 

References

Ben Cole. 2011. Kali: High Quality FEM Destruction in Zack Snyder’s Sucker Punch. In ACM SIGGRAPH 2011 Talks (SIGGRAPH ’11). ACM, New York, NY, USA, Article 40, 1 pages. https://doi.org/10.1145/2037826.2037879

David Minor. 2018. Making Space for Cloth Simulations Using Energy Minimization.
In ACM SIGGRAPH 2018 Talks (SIGGRAPH ’18). ACM, New York, NY, USA, Article 41, 2 pages. https://doi.org/10.1145/3214745.3214764

David Minor and David Corral. 2018. Smeat: ADMM based tools for character deformation. In SIGGRAPH Asia 2018 Technical Briefs, Tokyo, Japan, December 04-07, 2018. 2:1–2:4. https://doi.org/10.1145/3283254.3283279

Rahul Narain, Matthew Overby, and George E. Brown. 2016. ADMM &Supe; Projective Dynamics: Fast Simulation of General Constitutive Models. In Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation.
(SCA ’16). Eurographics Association, Goslar Germany, Germany, 21–28.
http://dl.acm.org/citation.cfm?id=2982818.2982822

Matthew Overby, George E. Brown, Jie Li, and Rahul Narain. 2017. ADMM Projective Dynamics: Fast Simulation of Hyperelastic Models with Dynamic Constraints.
Transactions on Visualization and Computer Graphics 23, 10 (Oct 2017), 2222–2234. https://doi.org/10.1109/TVCG.2017.2730875

Jun Saito and Simon Yuen. 2017. Efficient and Robust Skin Slide Simulation. In Proceedings of the ACM SIGGRAPH Digital Production Symposium (DigiPro ’17). ACM, New York, NY, USA, Article 10, 6 pages. https://doi.org/10.1145/3105692.3105701