Bounding Primitive Path Rendering Without Internal Edges
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
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.
Data Source
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.


