GPU Post-Tessellation Blending with Cached Domain Shading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing tessellation methods in computer graphics result in undesirable visual artefacts due to discontinuous changes in level of detail, and they require excessive processing effort, particularly when a large number of triangles are used.

Innovation Solution

Implementing a GPU pipeline with post-tessellation blender hardware that includes a cache and/or content addressable memory to reduce duplicate domain shading operations by storing UV coordinates and world space vertices, allowing for efficient blending and domain shading.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If a large number of triangles are used to increase level of detail, then the accuracy of surface approximation is improved, but the processing effort required to render the scene increases

Engineering Contradiction:
Improvesurface approximation accuracyVSAvoidprocessing effort
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent applies preliminary action by performing domain shading operations in advance during the tessellation process. The domain shader is executed for each tessellated triangle to pre-compute shading information, which is then stored in a cache. This allows the blender hardware to access pre-computed data during the blending phase, reducing the need for redundant shading operations and lowering overall processing effort while maintaining high surface approximation accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating a cache data structure that stores domain shading results for tessellated triangles. Instead of recomputing shading for every triangle during blending, the system copies pre-computed shading data from the domain shader into the cache, allowing efficient retrieval and reuse. This copying mechanism significantly reduces processing effort while preserving the visual quality achieved through high triangle counts.

Inventive Principle:
Principle #26Copying

2Reliability

If domain shading is performed for all vertices including those that do not require blending, then complete coverage is achieved, but redundant calculations increase processing time

Engineering Contradiction:
Improvecomplete vertex coverageVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by executing the domain shader in advance during the tessellation phase for all triangles, regardless of whether they will be blended. The shading results are stored in a cache data structure that persists into the blending phase. This ensures that when blending occurs, all necessary shading data is already available, eliminating the need for redundant domain shading operations and reducing processing time while maintaining complete vertex coverage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the domain shading operation from the blending process by separating these two functions into distinct pipeline stages. The domain shader executes independently during tessellation, and its results are extracted into a cache that is then consumed by the blender hardware. This extraction allows the system to avoid redundant shading calculations for vertices that do not require blending, reducing processing time while ensuring all vertices are properly shaded.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If a cache is introduced to store domain shading results, then duplicate operations are reduced, but device complexity increases

Engineering Contradiction:
ImprovethroughputVSAvoidhardware structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a cache data structure that stores domain shading results in a simplified copying mechanism. The cache uses standard memory structures to store shading data for tessellated triangles, allowing efficient retrieval during blending. This approach achieves high throughput by eliminating duplicate domain shading operations while introducing only minimal hardware complexity, as the cache operates using conventional memory access patterns rather than complex specialized hardware.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250342654A1Post-Tessellation Blending in a GPU Pipeline
Publication Date: 2025.11.06 IMAGINATION TECH LTD
  • US20250342654A1 patent drawing
  • US20250342654A1 patent drawing
  • US20250342654A1 patent drawing

AI summary

Implementations of post-tessellation blender hardware perform both domain shading and blending and while some vertices may not require blending, all vertices require domain shading. The blender hardware includes a cache and/or a content addressable memory and these data structures are used to reduce duplicate domain shading operations. In the event of a cache miss for a UV coordinate of a domain space vertex, a cache outputs the UV coordinate to a domain shader, where the domain space vertex comprises UV coordinates of neighbor vertices that are not inherent from the UV coordinates of the vertex itself.