Multipass Rendering Pipeline with Conditional Flag Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multipass rendering in programmable pixel shaders faces inefficiencies due to limited buffer capacities and increased overhead from control structures like conditional branches, which require processing all pixels across passes, leading to reduced processing efficiency.

Innovation Solution

A drawing processing apparatus and method that divides processing into multiple passes with a pipeline mechanism, using flags to determine and target specific units for arithmetic processing, reducing unnecessary processing and improving efficiency by only processing pixels that satisfy branch conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If multipass rendering is used to achieve complex shading processing, then drawing quality is improved, but processing efficiency deteriorates due to overhead from control structures and pass switching

Engineering Contradiction:
Improvedrawing qualityVSAvoidprocessing efficiency
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent segments the processing into two distinct phases: a first pass that collects conditional data and generates flags, and a second pass that uses these flags to selectively process only necessary pixels. This segmentation eliminates the need for control structures like conditional branches during the rendering passes, thereby reducing overhead while maintaining drawing quality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary data collection and flag generation in the first pass before the actual selective rendering in the second pass. By preparing the conditional data and determination flags in advance, the system avoids the overhead of evaluating control structures during the rendering passes, thus improving processing efficiency without sacrificing drawing quality.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If control structures like conditional branches are used in multipass rendering, then programming flexibility is improved, but processing overhead increases

Engineering Contradiction:
Improveprogramming flexibilityVSAvoidprocessing overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the control logic from the rendering passes by separating data collection from data processing. Conditional data is collected and flags are generated in the first pass, then these flags guide the second pass without requiring control structures during rendering. This extraction eliminates processing overhead while preserving programming flexibility through the flag-based control mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces determination flags as an intermediary between the conditional logic and the rendering process. These flags act as a mediator that carries the control information from the first pass to the second pass, eliminating the need for control structures like conditional branches during rendering and thereby reducing processing overhead while maintaining adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If all pixels are processed in each pass, then completeness of processing is ensured, but unnecessary processing increases overhead

Engineering Contradiction:
Improvecompleteness of processingVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by processing only the necessary pixels in the second pass based on the determination flags generated in the first pass. Instead of processing all pixels uniformly, the system selectively processes only those pixels that meet the conditional criteria, thereby reducing unnecessary processing overhead while ensuring completeness for the relevant pixels.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements feedback by using the conditional data collected in the first pass to generate determination flags that control the processing in the second pass. This feedback mechanism ensures that only pixels satisfying the branch conditions are processed, maintaining completeness of necessary processing while eliminating overhead from processing unnecessary pixels.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7663634B2Drawing processing apparatus and drawing processing method for multipass rendering
Publication Date: 2010.02.16 SONY INTERACTIVE ENTERTAINMENT LLC
  • US7663634B2 patent drawing
  • US7663634B2 patent drawing
  • US7663634B2 patent drawing

AI summary

A drawing processing apparatus capable of executing a drawing processing program having conditional branches efficiently by multipass rendering. The drawing processing apparatus comprises arithmetic processing parts including an object input part, a primitive generating part, a raster part, a pixelation part, a distribution part, and a shader which constitute pipeline stages. The shader divides the program into and executes the same in a plurality of passes depending on conditional branches. The shader generates enable flags determining whether or not respective pixels satisfy branch conditions. The flag generating part generates bind enable flags which are the enable flags on the pixels bound into the processing granularities of the pipeline stages, and feeds back the same to the respective pipeline stages. The arithmetic processing parts in the individual pipeline stages refer to the bind enable flags and limit the submission of data not targeted for arithmetic processing in the branched passes.