HiZ Update Optimization for Opaque Texture Discard

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Hierarchical Z-Culling (HiZ) optimization for texture-dependent discard operations is hindered by overly conservative updates in graphics processors, leading to inefficiencies in rendering and power consumption, particularly when discard operations are enabled in shaders with alpha channels having constant values of 1, resulting in unnecessary culling inefficiencies.

Innovation Solution

Enabling HiZ updates by analyzing lightweight per-texture and per-shader program information to alter the HiZ path, storing alpha intervals per texture, and utilizing the 'Fully opaque' criteria to optimize culling decisions, allowing for more efficient rendering even with discard operations, and applying these optimizations in various scenarios, including stencil testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If discard operations are enabled in shaders with alpha channels having constant values of 1, then rendering correctness is maintained, but culling efficiency deteriorates due to overly conservative HiZ updates

Engineering Contradiction:
Improverendering correctnessVSAvoidculling efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by differentiating the treatment of textures based on their alpha channel properties. Textures with constant alpha values of 1 are identified and handled differently from textures with variable or non-constant alpha values. This allows the HiZ update mechanism to be optimized locally for specific texture types without compromising overall rendering correctness, enabling non-conservative updates for fully opaque textures while maintaining conservative updates for textures that may have transparent regions.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter state by tracking whether a texture's alpha channel has a constant value of 1. This parameter change enables the system to switch between conservative and non-conservative HiZ update modes dynamically. When the alpha constant parameter is detected as 1, the system transitions to non-conservative updating, improving culling efficiency while maintaining rendering correctness through the preserved depth value mechanism.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If conservative HiZ updates are performed when discard operations are enabled, then rendering correctness is maintained, but power consumption increases due to unnecessary culling operations

Engineering Contradiction:
Improverendering correctnessVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by differentiating the treatment of textures based on their alpha channel properties. Textures with constant alpha values of 1 are identified and handled differently from textures with variable or non-constant alpha values. This allows the HiZ update mechanism to be optimized locally for specific texture types without compromising overall rendering correctness, enabling non-conservative updates for fully opaque textures while maintaining conservative updates for textures that may have transparent regions.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter state by tracking whether a texture's alpha channel has a constant value of 1. This parameter change enables the system to switch between conservative and non-conservative HiZ update modes dynamically. When the alpha constant parameter is detected as 1, the system transitions to non-conservative updating, improving culling efficiency while maintaining rendering correctness through the preserved depth value mechanism.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If non-conservative HiZ updates are implemented for textures with constant alpha of 1, then culling efficiency improves, but rendering complexity increases due to additional texture analysis requirements

Engineering Contradiction:
Improveculling efficiencyVSAvoidtexture analysis complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing texture analysis in advance, specifically determining whether each texture has a constant alpha value of 1 before rendering operations begin. This pre-computed information is stored and reused throughout the rendering process, allowing the HiZ update mechanism to operate efficiently without performing complex analysis during runtime. The preliminary classification of textures simplifies the runtime decision-making process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies self-service by having the texture management system automatically track and maintain information about alpha channel constants. Once a texture is loaded, the system autonomously determines its alpha properties and configures the appropriate HiZ update behavior without requiring complex runtime analysis or external intervention. This self-service approach reduces the computational burden during rendering operations.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10540808B2Hierarchical Z-culling (HiZ) optimization for texture-dependent discard operations
Publication Date: 2020.01.21 INTEL CORP
  • US10540808B2 patent drawing
  • US10540808B2 patent drawing
  • US10540808B2 patent drawing

AI summary

Methods and apparatus relating to techniques for provision of hierarchical Z-Culling (HiZ) optimization for texture-dependent discard operations are described. In an embodiment, a processor performs one or more operations (such as HiZ or Hierarchical Stencil test) on depth data of an image tile in response to a determination that texture space bounds of the image tile is fully opaque. The processor performs the one or more operations regardless of whether a discard operation is enabled. Other embodiments are also disclosed and claimed.