Graph-Based Animation Node System for Physics Simulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Graph-based animation design methods are limited in incorporating complex computational processes, such as physics engines, leading to less realistic animations and non-intuitive user interfaces, particularly when trying to simulate interactions between virtual objects and the environment.

Innovation Solution

A method allowing users to define animations by specifying a structure with items and connections representing operations, with rules that restrict the execution of processes like physics simulations to ensure flexibility and realism, such as allowing multiple physics nodes for complex animations and enabling self-consistent data processing without explicit location or order specifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a graph-based approach is used to define animations, then the animation can be broken down into computational processes, but the ability to incorporate complex computational processes like physics engines is limited

Engineering Contradiction:
Improveability to incorporate complex computational processesVSAvoidcomplexity of animation definition system
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The animation definition is segmented into discrete nodes representing computational processes (e.g., physics engine, animation processor) and directed edges representing data dependencies. This segmentation allows complex processes to be modularly incorporated without overwhelming the system architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A physics node is introduced as an intermediary component between the animation processor and the virtual world. This mediator receives animation data, applies physics simulations, and outputs updated object states, enabling complex physics computations to be integrated seamlessly into the animation pipeline.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If post-process dynamics is applied to physicalize animations, then realistic physics interactions can be simulated, but the animation output may become less realistic and aesthetically pleasing

Engineering Contradiction:
Improverealism of physics simulationVSAvoidaesthetic quality of animation
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The physics simulation is performed in advance during the animation definition phase rather than as a post-processing step. The physics node computes and stores the results of physical interactions before the final animation is generated, allowing aesthetic adjustments to be made without compromising physical realism.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system allows dynamic switching between different physics models and simulation parameters during animation definition. Users can adjust the degree of physical simulation to balance realism with aesthetic requirements, enabling the same framework to produce both highly realistic and stylized animations.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If a physics engine is incorporated into the graph-based animation editor, then physics simulations can be applied, but the user interface becomes non-intuitive and difficult to operate

Engineering Contradiction:
Improvecapability to simulate physics interactionsVSAvoidintuitiveness of user interface
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The physics node serves multiple functions: it processes animation data, applies physics simulations, and outputs updated object states. This multi-functionality consolidates complex operations into a single intuitive component, simplifying the user interface while maintaining versatile physics simulation capabilities.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system provides visual feedback in the graph-based interface showing the flow of data between nodes and the effect of physics simulations on virtual objects. This feedback mechanism helps users understand and control the simulation process intuitively, making the complex physics engine operationally simple.

Inventive Principle:
Principle #23Feedback

4Adaptability or versatility

If multiple physics nodes are used to represent different simulation types, then complex animations can be created, but the graph structure becomes more complex and harder to manage

Engineering Contradiction:
Improvecomplexity of animation scenariosVSAvoidcomplexity of graph structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Different physics simulation types are segmented into separate, standardized nodes (e.g., ragdoll node, hard keyframing node). Each node handles a specific simulation task independently, allowing complex animations to be built by combining simple, well-defined modules without creating a tangled graph structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple physics nodes can be merged into a single composite node when they work together on the same object. This merging capability simplifies the graph structure by reducing the number of separate components while maintaining the ability to represent complex simulation scenarios.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8730245B2Defining an animation of a virtual object within a virtual world
Publication Date: 2014.05.20 NATURALMOTION
  • US8730245B2 patent drawing
  • US8730245B2 patent drawing
  • US8730245B2 patent drawing

AI summary

In a method of defining an animation of a virtual object, during which values for attributes of the virtual object are updated at each of a series of time points, a user specifies a structure representing the update that includes a plurality of items and one or more connections between respective items. Each item represents a respective operation. Each connection represents that data output by the operation represented by one item is input to the operation represented by the connected item. The user specifies that the structure comprises one or more items in a predetermined category associated with a predetermined process that may be executed at most a predetermined number of times at each time point. An item belongs to the predetermined category if performing the respective operation represented by that item requires execution of the predetermined process. One or more rules are applied.