Sub-pixel Shadow Rendering via Light-space Visibility Buffers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional shadow volume techniques consume significant computational resources for rendering pixel-accurate shadows, while conventional shadow map techniques suffer from spatial and temporal aliasing, necessitating a more efficient method for rendering realistic and high-quality shadows.
Innovation Solution
The method employs a light-space visibility buffer to determine whether pixel fragment footprints are shadowed by a graphics primitive, using a frustum projected from a grid cell corresponding to a light source, allowing for sub-pixel accuracy without introducing aliasing, and utilizing irregular z-buffers to store references to all potentially occluded pixels, enabling dynamic scenes without precomputation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If conventional shadow volume techniques are used to generate pixel-accurate shadows, then shadow rendering quality is improved, but computational workload increases significantly
Solution Approach 1:
The patent segments the shadow rendering process into two distinct passes: a setup pass that constructs shadow volumes and computes visibility information, and a rendering pass that uses pre-computed visibility buffers to determine shadowed pixels. This segmentation allows complex shadow volume construction to be performed once, with results reused across multiple rendering operations, thereby reducing overall computational workload while maintaining pixel-accurate shadow quality.
Solution Approach 2:
The patent performs preliminary computation of shadow volumes and visibility information in a setup pass before the actual rendering occurs. By pre-computing which pixels are shadowed by which primitives and storing this information in visibility buffers, the rendering pass can quickly query pre-computed data rather than performing complex geometric tests during rendering, significantly improving rendering efficiency while preserving shadow accuracy.
2Productivity
If conventional shadow map techniques are used to reduce computational workload, then productivity is improved, but spatial and temporal aliasing artifacts occur
Solution Approach 1:
The patent introduces visibility buffers as an intermediary data structure that bridges the gap between shadow map efficiency and shadow volume accuracy. The visibility buffers store pre-computed visibility information from shadow volume analysis, allowing the rendering system to query shadow status without performing expensive geometric tests or suffering from shadow map aliasing. This intermediary structure enables accurate sub-pixel shadow determination while maintaining the computational efficiency of shadow map approaches.
Solution Approach 2:
The patent changes the sampling parameters by using irregular z-buffers and light-space visibility buffers that store visibility information at sub-pixel precision rather than the regular pixel-grid sampling used in conventional shadow maps. This parameter change allows the system to determine shadow status for sub-pixel positions accurately, eliminating spatial and temporal aliasing while maintaining the efficiency benefits of pre-computed visibility data.
3Ease of operation
If regular sampling is used in shadow map techniques, then ease of operation is improved, but aliasing artifacts are introduced
Solution Approach 1:
The patent employs asymmetric sampling by using irregular z-buffers and light-space visibility buffers that do not follow the regular pixel grid structure of conventional shadow maps. Instead of uniform pixel-aligned sampling, the system uses irregularly positioned sample points in light-space that can achieve sub-pixel precision, thereby eliminating aliasing artifacts while maintaining computational tractability through the pre-computed visibility structures.
Data Source
AI summary
A method, computer readable medium, and system are disclosed for rendering shadows. A frustum projected from a grid cell corresponding to a light source in light-space is defined and a graphics primitive is determined to intersect the frustum. A light-space visibility buffer is accessed to obtain a set of pixel fragment footprints corresponding to the frustum and it is identified whether each pixel fragment footprint of the pixel fragment footprints is shadowed by the graphics primitive.


