# US 2014/0198107 A1 · Fast rig-based physics simulation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0198107 A1
- Document ID: US20140198107A1
- Status: Published application
- Kind: A1
- Application number: 14/057,904
- Filed: 2013-10-18
- Published: 2014-07-17
- Earliest claimed: 2013-01-11
- Assignees: Disney Enterprises, Inc.
- Applicants: Disney Enterprises, Inc.
- Inventors: BERNHARD THOMASZEWSKI; ROBERT SUMNER; FABIAN HAHN; STELIAN COROS; MARKUS GROSS; SEBASTIAN MARTIN
- Web page: https://patentgrep.com/patent/US20140198107A1

## CPC

- G06T 13/40: of characters, e.g. humans, animals or virtual beings
- G06T 13/00: Animation
- G06T 13/20: Three-dimensional [3D] animation
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A method is disclosed for applying physics-based simulation to an animator provided rig. The disclosure presents equations of motions for simulations performed in the subspace of deformations defined by an animator's rig. The method receives an input rig with a plurality of deformation parameters, and the dynamics of the character are simulated in the subspace of deformations described by the character's rig. An artist's control of the simulation can be enhanced by providing a method that transforms stiffness values defined on rig parameters to a non-homogeneous distribution of material parameters for the underlying rig.

## Claims

### Claim 1

A method comprising:
receiving an animation rig with a plurality of rig parameters, the rig parameters defining a deformation space for an attached surface mesh, the attached surface mesh comprising a plurality of nodes;
receiving material stiffness data on either a subset of the rig parameters, the attached surface mesh, or a combination of the two;
using the rig and the material stiffness data to influence a physics-based simulation that is constrained by the deformation space of the rig; and
generating keyframes on some or all of the parameters as a result of the simulation.

### Claim 2 (depends on 1)

The method of claim 1, further comprising analyzing the simulation to create a set of high-level rig parameters, each high-level rig parameter being a combination of two or more of the rig parameters.

### Claim 3 (depends on 2)

The method of claim 2, further comprising using one or more of the high-level rig parameters to influence a second physics-based simulation; and
generating keyframes on the animation rig as a result of the second simulation.

### Claim 4 (depends on 1)

The method of claim 1, further comprising using one or more of the rig parameters to perform inverse kinematics calculations on the animation rig.

### Claim 5 (depends on 4)

The method of claim 4, wherein the rig parameters can be used to calculate an elastic energy, and
further wherein, using one or more of the rig parameters to perform inverse kinematics calculations on the animation rig comprises
receiving position values for a subset of the surface mesh nodes, and
calculating the remaining surface mesh node position values such that the elastic energy in the deformation space is substantially minimized.

### Claim 6 (depends on 1)

The method of claim 1, wherein the physics-based simulation comprises linearizing the animation rig at one or more frames of the animation.

### Claim 7 (depends on 1)

The method of claim 1, wherein the animation rig further comprises a volumetric mesh comprising
a plurality of internal nodes and
a topological structure defining the connectivity among the plurality of internal nodes, and
the method further comprises using the volumetric mesh to compute internal deformations and corresponding elastic energies.

### Claim 8 (depends on 7)

The method of claim 7, wherein the physics-based simulation comprises eliminating one or more of the plurality of internal nodes such that only a subset of the plurality of internal nodes is utilized in the physics-based simulation.

### Claim 9 (depends on 8)

The method of claim 8, wherein eliminating one or more of the plurality of internal nodes creates a residual error, and elimination of the one or more of the plurality of nodes is performed such that the residual error does not surpass a pre-determined threshold.

### Claim 10 (depends on 1)

The method of claim 1, wherein the physics-based simulation comprises
calculating a Jacobian, and
calculating a Jacobian error.

### Claim 11 (depends on 10)

The method of claim 10, wherein a calculated Jacobian error that is above a predetermined Jacobian error threshold causes the Jacobian to be recomputed, and a calculated Jacobian error that is below the predetermined Jacobian error threshold causes the Jacobian to remain constant.

### Claim 12

A method comprising:
receiving an animation rig with a plurality of rig parameters, the rig parameters defining a deformation space for an attached surface mesh, the attached surface mesh comprising a plurality of nodes;
performing a physics-based simulation, the simulation being constrained by the deformation space; and
generating keyframes on the animation rig based on the results of the simulation.

### Claim 13 (depends on 12)

The method of claim 12 further comprising receiving material stiffness data relating to the parameters,
wherein the simulation is both constrained by the deformation space and influenced by the material stiffness data.

### Claim 14 (depends on 12)

The method of claim 12, wherein the animation rig further comprises a volumetric mesh comprising
a plurality of internal nodes, and
a topological structure defining the connectivity among the plurality of internal nodes, and
the method further comprises using the volumetric mesh to compute internal deformations and corresponding elastic energies.

### Claim 15 (depends on 14)

The method of claim 14, wherein the physics-based simulation comprises eliminating one or more of the plurality of internal nodes such that only a subset of the plurality of internal nodes is utilized in the physics-based simulation.

### Claim 16 (depends on 15)

The method of claim 15, wherein eliminating one or more of the plurality of internal nodes creates a residual error, and elimination of the one or more of the plurality of internal nodes is performed such that the residual error does not surpass a pre-determined threshold.

### Claim 17 (depends on 12)

The method of claim 12, wherein the physics-based simulation comprises
calculating a Jacobian, and
calculating a Jacobian error, wherein
a calculated Jacobian error that is above a predetermined Jacobian error threshold causes the Jacobian to be recomputed, and a calculated Jacobian error that is below the predetermined Jacobian error threshold causes the Jacobian to remain constant.

### Claim 18

A non-transitory computer readable medium comprising an instruction set configured to cause a computing device to perform:
receiving an animation rig with a plurality of rig parameters, the rig parameters defining a deformation space for an attached surface mesh, the attached surface mesh comprising a plurality of nodes;
receiving material stiffness data on either a subset of the rig parameters, the surface mesh, or a combination of the two;
using the rig and the material stiffness data to influence a physics-based simulation that is constrained by the deformation space of the rig; and
generating keyframes on some or all of the rig parameters as a result of the simulation.

### Claim 19 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the instruction set is further configured to cause a computing device to perform analyzing the simulation to create a set of high-level rig parameters, each high-level rig parameter being a combination of two or more of the rig parameters.

### Claim 20 (depends on 19)

The non-transitory computer readable medium of claim 19, wherein the instruction set is further configured to cause a computing device to perform:
using one or more of the high-level rig parameters to influence a second physics-based simulation; and
generating keyframes on the animation rig as a result of the second simulation.

### Claim 21 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the instruction set is further configured to cause a computing device to perform using one or more of the rig parameters to perform inverse kinematics calculations on the animation rig.

### Claim 22 (depends on 21)

The non-transitory computer readable medium of claim 21, wherein the rig parameters can be used to calculate an elastic energy, and
further wherein, using one or more of the rig parameters to perform inverse kinematics calculations on the animation rig comprises
receiving position values for a subset of the surface mesh nodes, and
calculating the remaining surface mesh node position values such that the elastic energy in the deformation space is substantially minimized.

### Claim 23 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the physics-based simulation comprises linearizing the animation rig at one or more frames of the animation.

### Claim 24 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the animation rig further comprises a volumetric mesh comprising
a plurality of internal nodes and
a topological structure defining the connectivity among the plurality of internal nodes, and
the instruction set is further configured to cause the computing device to perform using the volumetric mesh to compute internal deformations and corresponding elastic energies.

### Claim 25 (depends on 24)

The non-transitory computer readable medium of claim 24, wherein the physics-based simulation comprises eliminating one or more of the plurality of internal nodes such that only a subset of the plurality of internal nodes is utilized in the physics-based simulation.

### Claim 26 (depends on 25)

The non-transitory computer readable medium of claim 25, wherein eliminating one or more of the plurality of internal nodes creates a residual error, and elimination of the one or more of the plurality of internal nodes is performed such that the residual error does not surpass a pre-determined threshold.

### Claim 27 (depends on 18)

The non-transitory computer readable medium of claim 18, wherein the physics-based simulation comprises calculating a Jacobian, and
calculating a Jacobian error.

### Claim 28 (depends on 27)

The non-transitory computer readable medium of claim 27, wherein a calculated Jacobian error that is above a predetermined Jacobian error threshold causes the Jacobian to be recomputed, and a calculated Jacobian error that is below the predetermined Jacobian error threshold causes the Jacobian to remain constant.

### Claim 29

A non-transitory computer readable medium comprising an instruction set configured to cause a computing device to perform:
receiving an animation rig with a plurality of rig parameters, the rig parameters defining a deformation space for an attached surface mesh, the attached surface mesh comprising a plurality of nodes;
performing a physics-based simulation, the simulation being constrained by the deformation space; and
generating keyframes on the rig based on the results of the simulation.

### Claim 30 (depends on 29)

The non-transitory computer readable medium of claim 29, wherein
the instruction set is further configured to cause a computer device to perform the step of receiving material stiffness data relating to the parameters, and
further wherein the simulation is both constrained by the deformation space and influenced by the material stiffness data.

### Claim 31 (depends on 29)

The non-transitory computer readable medium of claim 29, wherein the animation rig further comprises a volumetric mesh comprising
a plurality of internal nodes and
a topological structure defining the connectivity among the plurality of internal nodes, and
the instruction set is further configured to cause the computing device to perform using the volumetric mesh to compute internal deformations and corresponding elastic energies.

### Claim 32 (depends on 31)

The non-transitory computer readable medium of claim 31, wherein the physics-based simulation comprises eliminating one or more of the plurality of internal nodes such that only a subset of the plurality of internal nodes is utilized in the physics-based simulation.

### Claim 33 (depends on 32)

The non-transitory computer readable medium of claim 32, wherein eliminating one or more of the plurality of internal nodes creates a residual error, and elimination of the one or more of the plurality of internal nodes is performed such that the residual error does not surpass a pre-determined threshold.

### Claim 34 (depends on 29)

The non-transitory computer readable medium of claim 29, wherein the physics-based simulation comprises
calculating a Jacobian, and
calculating a Jacobian error, wherein
a calculated Jacobian error that is above a predetermined Jacobian error threshold causes the Jacobian to be recomputed, and a calculated Jacobian error that is below the predetermined Jacobian error threshold causes the Jacobian to remain constant.
