Distributed Node Graphs for Animation Rig Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current resource-intensive node-based graphical software applications struggle to efficiently process complex animation rigs due to computational limitations, particularly on mobile devices and even high-performance desktop systems, leading to slow rendering of complex animated scenes.
Innovation Solution
The implementation of a distributed computing system that splits animation application processing into a low complexity primary node graph evaluated locally and higher complexity companion node graphs evaluated by a distributed system, allowing for faster rendering and higher fidelity representations of animated objects.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Power
If complex node graphs are processed locally on high-performance desktop systems, then processing capability is sufficient, but processing time is considerable and system resources are heavily consumed
Solution Approach 1:
The patent segments the complex node graph into multiple sub-graphs and distributes them across different computing nodes in a cluster. Each node processes its assigned sub-graph independently, enabling parallel computation that reduces overall processing time while maintaining sufficient processing capability through collective power of multiple nodes.
Solution Approach 2:
The patent transitions from single-machine sequential processing to multi-node distributed parallel processing by adding the spatial dimension of networked computing nodes. This dimensional expansion allows simultaneous evaluation of multiple node graphs across different machines, dramatically reducing processing time while aggregating processing power from the entire cluster.
2Ease of operation
If complex node graphs are processed locally on mobile devices, then portability is maintained, but processing efficiency is insufficient
Solution Approach 1:
The patent introduces a network infrastructure as an intermediary between mobile devices and the distributed computing cluster. Mobile devices send node graph processing requests through the network, and receive results back, enabling them to leverage remote high-performance computing resources while maintaining their portability and ease of operation.
Solution Approach 2:
The patent creates copies of the node graph data and distributes them across multiple computing nodes in the cluster. Each node receives and processes identical or relevant portions of the node graph data, enabling parallel computation that significantly boosts processing efficiency while mobile devices continue to operate portably without handling the computational load directly.
3Speed
If all rig nodes are evaluated locally, then real-time interaction is achieved, but computational resources are exhausted
Solution Approach 1:
The patent applies partial evaluation by identifying and processing only the critical or changed portions of the node graph in real-time on local devices, while deferring less time-sensitive or more computationally intensive evaluations to the distributed cluster. This selective approach maintains real-time responsiveness for essential operations while avoiding exhaustion of local computational resources.
Data Source
AI summary
Systems and methods are described for leveraging distributed computation systems to split animation application processing of node graphs into two components: 1) a low complexity, primary node graph, that is evaluated by the application of the local device; and 2) one or more, higher complexity, companion node graphs that connect to the primary node graph, and are evaluated by a distributed computation system. As the local device evaluates the original, low complexity node graph, an artist is provided with fast, direct manipulation of an animated object. At the same time, the distributed computation system evaluates the higher complexity, companion node graphs, thereby providing a user of the local application with higher fidelity versions of the primary node graph as they are computed.


