- Number
- 20180096510
- Published
- 2018-04-05
- Filed
- 2016-09-30
- Assignee
- DISNEY ENTERPRISES, INC.
- Inventors
- Le; Binh H.; Hodgins; Jessica
- CPC
- G06T13/40
- Verdict
- Medium Notable software
- Source
- Google Patents · FreePatentsOnline
The keeper's note
Virtual entity animation.
Abstract
Systems and methods of virtual entity animation are presented herein. A virtual entity may have virtual skin defined by a model having a set of vertices. A skeletal-based skin deformation method of animation may be used wherein individual vertices in the model may have individually and independently determined centers of rotation.
Background
FIELD OF THE DISCLOSURE
This disclosure relates to virtual entity animation.BACKGROUND
Virtual entities, such as virtual characters, may be modeled by a bone structure and an exterior “skin” that deforms as bones bend around joints. Skin deformation methods, sometimes referred to as “skinning algorithms,” may dictate the way in which the skin reacts to bone movement. Skin deformation methods that work across a broad range of character designs and poses may be implemented to create compelling animations. Linear blend skinning (LBS) and dual quaternion skinning (DQS) are some methods. These and other skin deformation methods may be used for real-time applications. Both techniques may be efficient to compute and may be effective for many purposes. However, they may cause artifacts in the skin deflection, such as collapsing joints, a candy wrapper twist, and/or bulging around joints.SUMMARY
One aspect of the disclosure relates to a system configured for virtual entity animation. Skin deformation methods may be used generate high-quality, detailed deformations around the joints of virtual entities from a small set of controllers. Among the available methods, skeletal-based methods may be used. Generally, skeletal-based methods may employ a simplified version of the anatomical skeleton (e.g., virtual bones connected by joints) as a controller. The virtual entity may be deformed by rotating the bones around its joints. Individual bones may propagate their transform
Claims
1. A system configured to facilitate animation and rendering of virtual entities, the system comprising: non-transitory electronic storage storing information defining one or more virtual entities, individual virtual entities being defined by virtual skin, virtual bones, and virtual joints, the virtual bones and the virtual joints being used to animated the virtual skin, the virtual skin of an individual virtual entity being modeled as a set of vertices or other geometric structures that moves according to the animation of the virtual entity, the information defining the one or more virtual entities including animation data, skin rest position information, skinning weight information, and individual rest positions of the individual vertices computed from the skin rest position information, the skinning weight information conveying influence of virtual bone movement or other specification of the animation on deformation of individual vertices, the skinning weight information further including individual skinning weights computed for individual vertices; and one or more physical processors configured by machine-readable instructions to: determine individual centers of rotations for the individual vertices comprising the virtual skin or computed from the geometric structures defining the skin, the individual centers of rotations having individual positions represented as vectors having vector components, the individual centers of rotation being determined with respect to individual rest positions of the individual vertices; and determine deformed positions of the individual vertices responsive to specification of the animated motion, the deformed positions being determined based on the individual centers of rotation of the individual vertices, the individual skinning weights, and the animated motion.
11. A method of animation and rendering of virtual entities, the method being implemented in a computer system comprising one or more physical processor and non-transitory storage media storing machine-readable instructions, the method comprising: storing information defining one or more virtual entities, individual virtual entities being defined by virtual skin, virtual bones, and virtual joints, the virtual bones and the virtual joints being used to animated the virtual skin, the virtual skin of an individual virtual entity being modeled as a set of vertices or other geometric structures that moves according to the animation of the virtual entity, the information defining the one or more virtual entities including animation data, skin rest position information, skinning weight information, and individual rest positions of the individual vertices computed from the skin rest position information, the skinning weight information conveying influence of virtual bone movement or other specification of the animation on deformation of individual vertices, the skinning weight information further including individual skinning weights computed for individual vertices; and determining individual centers of rotations for the individual vertices comprising the virtual skin or computed from the geometric structures defining the skin, the individual centers of rotations having individual positions represented as vectors having vector components, the individual centers of rotation being determined with respect to individual rest positions of the individual vertices; and determining deformed positions of the individual vertices responsive to specification of the animated motion, the deformed positions being determined based on the individual centers of rotation of the individual vertices, the individual skinning weights, and the animated motion.