Bounding Primitive Path Rendering Without Internal Edges

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing path rendering techniques in graphics processing units (GPUs) introduce conflation artifacts due to internal edges in cover geometry, leading to degraded image quality and increased memory consumption when trying to maintain separate Boolean coverage for each color sample.

Innovation Solution

The method involves defining a bounding primitive that covers a path without internal edges, determining its intersection with clip planes, and generating fragments accordingly to avoid internal edges during the rasterization process, thereby eliminating conflation artifacts and reducing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If internal edges are included in cover geometry, then coverage accuracy is improved, but conflation artifacts are introduced degrading image quality

Engineering Contradiction:
Improvecoverage accuracyVSAvoidconflation artifacts
Core Design Contradiction:
Measurement precisionVSObject-affected harmful factors

Solution Approach 1:

The patent extracts and removes internal edges from the cover geometry, keeping only the external boundary. This is achieved by using a single continuous path to define the cover region, eliminating the need for internal edges that would otherwise be required to accurately represent complex shapes with holes or multiple components. The removal of internal edges prevents conflation artifacts while maintaining adequate coverage accuracy through the single-path representation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the cover geometry definition into two distinct components: the external boundary path and the stencil buffer. The external boundary defines the overall coverage region without internal edges, while the stencil buffer encodes the precise coverage information for each pixel sample. This segmentation allows the cover geometry to remain simple (avoiding internal edges) while the stencil buffer provides the necessary coverage precision.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If multiple coverage samples are reduced to single color sample, then memory consumption is reduced, but conflation artifacts occur due to conflating Boolean coverage with fractional opacity

Engineering Contradiction:
Improvememory consumptionVSAvoidconflation artifacts
Core Design Contradiction:
Quantity of substanceVSObject-affected harmful factors

Solution Approach 1:

The patent segments the rendering process into two distinct passes: a stencil pass that establishes Boolean coverage for each sample, and a cover pass that applies color without further coverage testing. By separating coverage determination (stencil buffer) from color application (cover geometry), the system avoids conflating Boolean coverage with fractional opacity, eliminating conflation artifacts while maintaining memory efficiency through sample reduction.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary coverage determination in the first pass by writing to the stencil buffer, which establishes Boolean coverage information for each pixel sample before the cover pass begins. This preliminary action allows the second pass to apply color without needing to re-evaluate coverage, preventing conflation artifacts while enabling memory-efficient sample reduction.

Inventive Principle:
Principle #10Preliminary action

3Object-affected harmful factors

If number of color samples is increased to match coverage samples, then conflation artifacts are eliminated, but memory consumption and bandwidth increase

Engineering Contradiction:
Improveconflation artifactsVSAvoidmemory consumption
Core Design Contradiction:
Object-affected harmful factorsVSQuantity of substance

Solution Approach 1:

The patent segments the coverage information storage from the color sample storage by using a separate stencil buffer. The stencil buffer holds Boolean coverage data for all N coverage samples, while only M color samples (where M < N) are stored in the color buffer. This segmentation eliminates the need to increase color samples to match coverage samples, preventing both conflation artifacts and excessive memory consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces the stencil buffer as an intermediary data structure that mediates between the coverage determination process and the color rendering process. The stencil buffer stores precise coverage information for N samples without requiring proportional color samples, allowing the system to maintain high coverage accuracy while using fewer color samples, thus avoiding both conflation artifacts and excessive memory usage.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9773341B2Rendering cover geometry without internal edges
Publication Date: 2017.09.26 NVIDIA CORP
  • US9773341B2 patent drawing
  • US9773341B2 patent drawing
  • US9773341B2 patent drawing

AI summary

One embodiment of the present invention includes techniques for rasterizing geometries. First, a processing unit defines a bounding primitive that covers the geometry and does not include any internal edges. If the bounding primitive intersects any enabled clip plane, then the processing unit generates fragments to fill a current viewport. Alternatively, the processing unit generates fragments to fill the bounding primitive. Because the rasterized region includes no internal edges, conflation artifacts caused when the number of coverage samples per pixel exceeds the number of color samples per pixel may be reduced. In prior-art techniques, reducing such conflation artifacts typically involves increasing the number of color samples per pixel to equal the number of coverage samples per pixel. Consequently, the disclosed techniques enable rendering using algorithms that reduce the ratio of color to coverage samples, thereby decreasing memory consumption and memory bandwidth use, without causing conflation artifacts associated with cover geometries.