Hierarchical Z-Buffer Occlusion Culling for 3D Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In 3D graphic rendering, the overdraw factor increases due to current primitives occluding or overlapping previously drawn primitives, leading to increased bandwidth usage and buffer access limitations.

Innovation Solution

A graphic rendering method utilizing a hierarchical z-buffer to discard primitives with minimum depth values greater than all maximum depth values in the z-buffer levels, reducing the workload of the rasterizer and fragment processor by efficiently performing occlusion culling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional immediate mode rendering processes all primitives in submission order, then complete scene rendering is achieved, but overdraw factor increases causing increased bandwidth usage and buffer access limitations

Engineering Contradiction:
Improverendering throughputVSAvoidbandwidth usage
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by performing occlusion culling before the rasterization stage. The hierarchical z-buffer stores depth information in advance, allowing the system to determine which primitives are occluded before they are processed by the rasterizer and fragment processor, thereby preventing unnecessary rendering operations and reducing bandwidth usage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements segmentation by dividing the z-buffer into a hierarchical structure with multiple levels. This hierarchical z-buffer segments depth information into different resolution levels, enabling efficient occlusion testing at appropriate granularities. The segmented structure allows the system to discard occluded primitives at various levels without processing all pixels at full resolution, thus reducing overall bandwidth consumption.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all primitives are processed by the rasterizer and fragment processor, then complete rendering is achieved, but processing workload increases

Engineering Contradiction:
Improverendering completenessVSAvoidprocessing workload
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs occlusion culling as a preliminary action before rasterization. By using the hierarchical z-buffer to determine which primitives are occluded in advance, the system can discard these primitives before they reach the rasterizer and fragment processor, significantly reducing their workload while ensuring that only visible primitives are processed completely.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts and removes occluded primitives from the rendering pipeline before they undergo expensive rasterization and fragment processing. The hierarchical z-buffer enables the system to identify and extract only the visible primitives that need to be processed, leaving occluded ones to be discarded, thus reducing the processing workload on the rasterizer and fragment processor.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If hierarchical z-buffer with multiple levels is implemented, then occlusion culling efficiency is improved, but memory structure complexity increases

Engineering Contradiction:
Improveocclusion culling efficiencyVSAvoidmemory structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements the nested doll principle by creating a hierarchical z-buffer where multiple levels of depth information are nested within each other. Each level contains depth data at a different resolution, with coarser levels nested within finer levels. This nested structure enables efficient occlusion culling by allowing the system to check coarser levels first and only process finer levels when necessary, improving occlusion culling efficiency while managing memory complexity through hierarchical organization.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS8456468B2Graphic rendering method and system comprising a graphic module
Publication Date: 2013.06.04 STMICROELECTRONICS SRL
  • US8456468B2 patent drawing
  • US8456468B2 patent drawing
  • US8456468B2 patent drawing

AI summary

A method for rendering a three dimensional scene on a displaying screen comprises: generating for a tile of a current scene a hierarchical z-buffer which comprises a plurality of levels organized according to depth values; calculating a minimum depth value d of a submitted primitive; calculating an intersection area associated with said primitive with respect to said tile; providing a multiplicity of aligned regions each associated with a level of the hierarchical z-buffer so that the exact area calculated is suitable to be covered, at least entirely, by the union of such aligned regions; comparing the minimum depth value d of the submitted primitive with corresponding maximum depth values v1, v2, . . . , vN each read from the levels of the hierarchical z-buffer; discarding said primitive whether the minimum depth value d is bigger than all maximum depth values v1, v2, . . . , vN.