Dreamworks Patent Applications

SCALABLE MESSAGING SYSTEM

Granted: June 21, 2018
Application Number: 20180176174
A system and method provides a computer-implemented messaging service. Users subscribe to message channels. A message queue buffers messages to a router. The router determines whether characteristics of a first message match criteria specified in subscription requests, and may route the first message to one or more sending agents based on modes of communication specified in the subscription service requests. The sending agent(s) generate a second message formatted for the specified modes…

MULTIPOINT OFFSET SAMPLING DEFORMATION

Granted: January 25, 2018
Application Number: 20180025527
A skin deformation system for use in computer animation is disclosed. The skin deformation system accesses the skeleton structure of a computer generated character, and accesses a user's identification of features of the skeleton structure that may affect a skin deformation. The system also accesses the user's identification of a weighting strategy. Using the identified weighting strategy and identified features of the skeleton structure, the skin deformation system determines the degree…

METHOD AND SYSTEM FOR DIRECTLY MANIPULATING THE CONSTRAINED MODEL OF A COMPUTER-GENERATED CHARACTER

Granted: January 18, 2018
Application Number: 20180018804
A rail manipulator indicates the possible range(s) of movement of a part of a computer-generated character in a computer animation system. The rail manipulator obtains a model of the computer-generated character. The model may be a skeleton structure of bones connected at joints. The interconnected bones may constrain the movements of one another. When an artist selects one of the bones for movement, the rail manipulator determines the range of movement of the selected bone. The…

GENERATION OF THREE-DIMENSIONAL IMAGERY FROM A TWO-DIMENSIONAL IMAGE USING A DEPTH MAP

Granted: November 2, 2017
Application Number: 20170316605
A method for generating stereoscopic images includes obtaining image data comprising a plurality of sample points. A direction, a color value, and a depth value are associated with each sample point. The directions and depth values are relative to a common origin. A mesh is generated by displacing the sample points from the origin. The sample points are displaced in the associated directions by distances representative of the corresponding depth values. The image data is mapped to the…

TIMING-BASED SCHEDULING FOR COMPUTER-GENERATED ANIMATION

Granted: October 26, 2017
Application Number: 20170309253
A method of scheduling and performing computations for generating an interactive computer-generated animation on behalf of a client device to achieve a desired quality of service includes generating a computational configuration of computations that, when performed, produce the computer-generated animation with the desired quality of service. The configuration includes an identification of a first computation that outputs first data, a first start time for the first computation, and a…

MULTIPLE VISUAL REPRESENTATIONS OF LIGHTING EFFECTS IN A COMPUTER ANIMATION SCENE

Granted: October 5, 2017
Application Number: 20170287197
Computer animation tools for viewing, in multiple contexts, the effect of changes to a computer animation are disclosed. An artist configures multiple visual displays in the user interface of a computer animation system. A visual display shows one or more frames of computer animation. An artist configures a visual display to reflect a specific context. For example, the artist may assign a particular virtual viewpoint of a scene to a particular visual display. Once visual displays are…

VISUALIZATION TOOL FOR PARALLEL DEPENDENCY GRAPH EVALUATION

Granted: September 28, 2017
Application Number: 20170278290
Systems and processes providing a tool for visualizing parallel dependency graph evaluation in computer animation are provided. Runtime evaluation data of a parallel dependency graph may be collected, including the start time and stop time for each node in the graph. The visualization tool may process the data to generate performance visualizations as well as other analysis features. Performance visualizations may illustrate the level of concurrency over time during parallel dependency…

FACIAL CAPTURE ANALYSIS AND TRAINING SYSTEM

Granted: July 27, 2017
Application Number: 20170213076
A method for evaluating a facial performance using facial capture of two users includes obtaining a reference set of facial performance data representing a first user's facial capture; obtaining a facial capture of a second user; extracting a second set of facial performance data based on the second user's facial capture; calculating at least one matching metric based on a comparison of the reference set of facial performance data to the second set of facial performance data; and…

REPURPOSING EXISTING ANIMATED CONTENT

Granted: July 20, 2017
Application Number: 20170206696
Systems and methods for automatically animating a character based on an existing corpus of animation are described. The character may be from a previously produced feature animated film, and the data used for training may be the data used to animate the character in the film. A low-dimensional embedding for subsets of the existing animation corresponding to different semantic labels may be learned by mapping high-dimensional rig control parameters to a latent space. A particle model may…

DIGITAL USER INTERFACE TO PROVIDE DRAWING DIRECTIONS TO GUIDE USER

Granted: June 15, 2017
Application Number: 20170169555
An electronic device with a display screen provides drawing directions to guide a user to create artwork on a physical medium. The electronic device displays a first drawing direction for drawing a portion of a subject on a physical medium, and prompts a user for a user input indicating completion of the first drawing direction by the user. Upon receiving the prompted user input, the electronic device displays a second drawing direction for drawing another portion of the subject on the…

EFFICIENT AND STABLE APPROACH TO ELASTICITY AND COLLISIONS FOR HAIR ANIMATION

Granted: April 6, 2017
Application Number: 20170098327
One exemplary process for animating hair includes receiving data representing a plurality of hairs and a plurality of objects in a timestep of a frame of animation. A first tree is populated to represent kinematic objects of the plurality of objects and a second tree is populated to represent dynamic objects of the plurality of objects based on the received data. A first elasticity preconditioner is created to represent internal elastic energy of the plurality of hairs based on the…

METHOD AND SYSTEM FOR CALIBRATING A VIRTUAL REALITY SYSTEM

Granted: November 24, 2016
Application Number: 20160343167
A virtual reality system includes a platform, a headset, a mount, and a control unit. The headset includes a motion-sensing unit and a display unit configured to display a video of a virtual environment. The mount is positioned on the platform and configured to releasably engage the headset. While the headset is engaged with the mount, the headset is positioned in a first position. While the headset is disengaged from the mount, the headset is positioned in a second position. The control…

COMPUTER-BASED TRAINING USING A GRAPHICAL USER INTERFACE

Granted: November 19, 2015
Application Number: 20150331597
A graphical user interface (GUI) for training includes, in some embodiments, a first group of icons arranged about a first axis, where the first group of icons corresponds to computer-generated animation concepts. The GUI also includes a second group of icons arranged about a second axis that intersects the first axis at a particular icon along the first axis. The second group of icons corresponds to videos that illustrate the computer-generated animation concept associated with the…

EFFICIENT AND STABLE APPROACH TO ELASTICITY AND COLLISIONS FOR HAIR ANIMATION

Granted: August 6, 2015
Application Number: 20150221119
One exemplary process for animating hair includes receiving data representing a plurality of hairs and a plurality of objects in a timestep of a frame of animation. A first tree is populated to represent kinematic objects of the plurality of objects and a second tree is populated to represent dynamic objects of the plurality of objects based on the received data. A first elasticity preconditioner is created to represent internal elastic energy of the plurality of hairs based on the…

MULTIPOINT OFFSET SAMPLING DEFORMATION TECHNIQUES

Granted: July 2, 2015
Application Number: 20150187113
Systems and methods for performing MOS skin deformations are provided. In one example process, the in vector of a MOS transform may be manually configured by a user. In another example process, a slide/bulge operation may be configured to depend on two or more MOS transforms. Each of the MOS transforms may be assigned a weight that represents the transform's contribution to the overall slide/bulge. In yet another example process, a bulge operation for a MOS vertex may be performed in a…

PRESERVING AND REUSING INTERMEDIATE DATA

Granted: September 18, 2014
Application Number: 20140267291
Preservation and reuse of intermediate data generated in a render setup graph for computer animation is disclosed. A processing node in the graph can generate intermediate data and, rather than send it directly to a downstream node in the graph, preserve it for reuse during subsequent processing. As a result, a downstream processing node can reuse the preserved intermediate data, rather than wait while the intermediate data is generated by the processing node in realtime. An intermediate…

PROCEDURAL PARTITIONING OF A SCENE

Granted: September 18, 2014
Application Number: 20140267344
Systems and methods for partitioning a set of animation objects using a node in a render setup graph are provided. The render setup graph may be used to configure and manage lighting configuration data as well as external processes used to render the computer-generated image. The render setup graph may include a dependency graph having nodes interconnected by edges along which objects and object configuration data may be passed between nodes. The nodes may be used to provide a source of…

METHOD AND SYSTEM FOR DIRECTLY MANIPULATING THE CONSTRAINED MODEL OF A COMPUTER-GENERATED CHARACTER

Granted: September 18, 2014
Application Number: 20140267312
A rail manipulator indicates the possible range(s) of movement of a part of a computer-generated character in a computer animation system. The rail manipulator obtains a model of the computer-generated character. The model may be a skeleton structure of bones connected at joints. The interconnected bones may constrain the movements of one another. When an artist selects one of the bones for movement, the rail manipulator determines the range of movement of the selected bone. The…

RENDER SETUP GRAPH

Granted: September 18, 2014
Application Number: 20140267309
Systems and methods for rendering an image using a render setup graph are provided. The render setup graph may be used to configure and manage lighting configuration data as well as external processes used to render the computer-generated image. The render setup graph may include a dependency graph having nodes interconnected by edges along which objects and object configuration data may be passed between nodes. The nodes may be used to provide a source of objects and object…

METHOD AND SYSTEM FOR VIEWING OF COMPUTER ANIMATION

Granted: September 18, 2014
Application Number: 20140267307
Computer animation tools for viewing, in multiple contexts, the effect of changes to a computer animation are disclosed. An artist configures multiple visual displays in the user interface of a computer animation system. A visual display shows one or more frames of computer animation. An artist configures a visual display to reflect a specific context. For example, the artist may assign a particular virtual viewpoint of a scene to a particular visual display. Once visual displays are…