Graphics Processor Visibility Pre-Pass for Overdraw Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems suffer from redundant rendering operations due to sequential processing of primitives, leading to reduced frame rates and increased memory bandwidth requirements, exacerbated by larger and more complex render outputs and programmable fragment shading, which existing hidden surface removal techniques fail to adequately address.

Innovation Solution

A two-pass approach is implemented, comprising a pre-pass operation for hidden surface removal followed by a main pass, where visibility information is used to control fragment processing based on visibility tests and maintain records of processing order dependencies, allowing efficient culling of invisible fragments and optimizing rendering operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If primitives are processed sequentially using traditional rendering methods, then the rendering pipeline can process all primitives, but redundant rendering operations occur causing reduced frame rates and increased memory bandwidth requirements

Engineering Contradiction:
Improveframe rateVSAvoidmemory bandwidth
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by performing a pre-pass rendering operation before the main rendering pass. In this pre-pass, all primitives are rasterized and depth information is stored in a depth buffer without completing the full rendering pipeline. This preliminary depth information collection enables the main pass to identify and skip invisible fragments, thereby reducing redundant rendering operations and improving frame rate while decreasing memory bandwidth usage.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If early hidden surface removal techniques are used, then some redundant processing is reduced, but they are less effective in complex scenes leading to continued overdraw

Engineering Contradiction:
Improverendering efficiencyVSAvoidvisible fragments
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments the rendering process into two distinct passes: a pre-pass that collects depth information for all primitives, and a main pass that uses this information to selectively render only visible fragments. This segmentation enables more effective hidden surface removal in complex scenes by separating the depth information gathering phase from the actual rendering phase, allowing precise identification of visible fragments that would otherwise be culled incorrectly.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements feedback by using the depth buffer generated in the pre-pass to control fragment processing in the main pass. The depth information collected during the pre-pass serves as feedback that guides which fragments should be rendered and which can be skipped, creating a feedback loop that optimizes rendering efficiency based on the scene's depth structure.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12626462B2Graphics processors
Publication Date: 2026.05.12 ARM LTD
  • US12626462B2 patent drawing
  • US12626462B2 patent drawing
  • US12626462B2 patent drawing

AI summary

A sequence of primitives to be rendered is processed using a first, pre-pass operation to determine “visibility” information for the sequence of primitives, that is then used in a second, main pass operation in which fragments for primitives that were processed during the first, pre-pass operation are subjected to a visibility test that uses the visibility information determined during the first, pre-pass operation, to determine whether a fragment for a primitive should be processed further in the second, main pass operation. When a fragment is, in the second, main pass operation, subjected to and passes a particular form of visibility test so as to be determined as needing to be processed further, a processing order dependency that would be indicated for the fragment in a record indicative of processing order dependencies for a sub-region of the render output to which the fragment relates is not enforced.