Multi-Machine Rendering via Delta Instructions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer graphics rendering technologies face limitations in computational speed and efficiency, especially when rendering high-resolution images, as they often rely on a single workstation's processing power, which can lead to slow rendering times and inability to handle multiple scenes or contexts simultaneously.

Innovation Solution

A system for multi-machine rendering that regenerates and processes delta instructions across multiple computers, allowing for real-time rendering updates and efficient distribution of computationally expensive tasks, enabling faster convergence times and improved handling of multiple contexts without overloading local resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If rendering is performed only at the local workstation, then the system remains simple and easy to operate, but the rendering speed is limited and computational power is insufficient for high-resolution images

Engineering Contradiction:
Improverendering speedVSAvoidsystem complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The rendering system is segmented into multiple independent rendering engines distributed across different computers. Each rendering engine can process rendering tasks independently, allowing the system to handle multiple scenes or contexts simultaneously without overloading a single workstation, thus improving rendering speed while distributing system complexity across multiple nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple rendering engines from different computers are merged into a coordinated system that shares scene data and rendering state through delta information. This allows the combined computational power of multiple machines to be utilized for faster rendering while maintaining a unified rendering workflow through the scene graph architecture.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If multiple rendering engines are used to accelerate rendering, then rendering speed improves, but the system complexity increases and coordination between engines becomes more difficult

Engineering Contradiction:
Improverendering throughputVSAvoidrendering system architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scene graph data structure serves as a universal interface that all rendering engines can understand and process. By representing scenes in a standardized graph format with nodes and edges, the system enables multiple rendering engines to work on the same scene simultaneously without requiring complex custom coordination protocols for each engine pair.

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

Solution Approach 2:

The system implements feedback mechanisms where rendering engines send progress updates and intermediate results back to the central system, which then distributes delta information (changes) to relevant engines. This feedback loop allows rendering engines to stay synchronized and update their work based on changes made by other engines, coordinating complex multi-engine rendering without centralized micromanagement.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If a single workstation handles all rendering tasks, then the system is simple to manage, but it cannot handle multiple scenes or contexts simultaneously without overloading local resources

Engineering Contradiction:
Improvemulti-scene handling capabilityVSAvoidsystem management ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system transitions from a single-dimensional (single workstation) rendering architecture to a multi-dimensional distributed architecture where rendering capacity is expanded across multiple spatial dimensions (multiple computers). This allows the system to handle multiple scenes or contexts simultaneously by distributing them across different rendering engines while maintaining a unified logical view through the scene graph.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Manufacturing precision

If high-resolution rendering is performed at the local workstation, then image quality is maintained, but rendering time increases significantly due to computational limits

Engineering Contradiction:
Improverendering resolution qualityVSAvoidrendering time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-processing scene data into a standardized scene graph format and pre-distributing it to multiple rendering engines before actual rendering begins. This preparation work is done once and reused across multiple rendering operations, allowing high-resolution rendering to proceed in parallel across multiple engines without repeatedly performing the same data preparation, thus reducing overall rendering time while maintaining quality.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3770861B1Distributed multi-context interactive rendering
Publication Date: 2023.09.06 DREAMWORKS ANIMATION LLC
  • EP3770861B1 patent drawingFigure 1
  • EP3770861B1 patent drawingFigure 2
  • EP3770861B1 patent drawingFigure 3

AI summary

A method of controlling rendering of computer images includes: providing first instructions to be processed at first computers, for rendering a first computer image; providing second instructions to be processed at second computers, for rendering a second computer image; receiving a user request for a change; and in response to receiving the request: regenerating the first instructions; providing first delta information to be processed at the first computers, reflecting one or more differences between the provided first instructions and the regenerated first instructions; regenerating the second instructions based on the request; providing second delta information to be processed at the second computers, reflecting one or more differences between the provided second instructions and the regenerated second instructions; receiving first rendering results from the first computers corresponding to the first delta information; and receiving second rendering results from the second computers corresponding to the second delta information.