Tiled Forward Shading Depth Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing pixel shading techniques, such as forward and deferred rendering, face inefficiencies in handling large numbers of lights, over-shading, and transparency, with forward rendering requiring many shaders and excessive calculations, and deferred rendering struggling with multi-sample anti-aliasing and transparent objects.

Innovation Solution

The implementation of tiled forward shading with improved depth filtering, where the image is divided into tiles, allowing for the creation of depth-specific volume lists that reduce unnecessary computations by filtering out non-intersecting objects and volumes, enabling efficient pixel shading and handling of complex scenes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If forward rendering is used to apply lights and volume effects to each pixel, then material selection and transparency handling are improved, but computational overhead increases due to shading many pixels unnecessarily

Engineering Contradiction:
Improvematerial selectionVSAvoidcomputational overhead
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The image is divided into multiple tiles, and the scene is divided into object groups with different depth ranges. This segmentation allows the system to process only relevant volumes for each tile and object group, avoiding unnecessary computations on pixels that will be overwritten later.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Depth-specific volume lists are created for each object group, tailoring the volume information to local depth characteristics. This allows each region to have customized volume data rather than processing all volumes globally, reducing computational overhead while maintaining quality.

Inventive Principle:
Principle #3Local quality

2Reliability

If forward rendering shades all pixels with lights and volume effects, then transparency and material properties are handled accurately, but processing time increases due to over-shading

Engineering Contradiction:
Improvetransparency handlingVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Volume lists are pre-filtered by depth range before pixel shading occurs. By determining which volumes are relevant to each object group in advance, the system avoids processing irrelevant volumes during the actual shading phase, reducing processing time while maintaining transparency accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system performs partial shading by applying lights and volume effects only to pixels that are actually visible and not overwritten. This partial action approach maintains reliability for transparency handling while significantly reducing the excessive processing of hidden or overwritten pixels.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If deferred rendering is used to reduce shader count, then computational efficiency improves, but handling of transparent objects and multi-sample anti-aliasing becomes difficult

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidtransparency handling
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent merges the advantages of forward rendering (transparency handling, multi-sample anti-aliasing support) with the efficiency of deferred rendering by using depth-specific volume lists and tiling. This hybrid approach maintains computational efficiency while preserving the ability to handle transparent objects and anti-aliasing.

Inventive Principle:
Principle #5Merging (Combining)

4Reliability

If all volumes are processed for each tile, then completeness of lighting is maintained, but computational overhead increases due to non-intersecting objects

Engineering Contradiction:
Improvelighting completenessVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system extracts and filters out non-intersecting volumes from the processing pipeline by creating depth-specific volume lists for each object group. Only volumes that actually intersect with the tile and object group are retained, maintaining lighting completeness for relevant objects while eliminating wasted computation on non-intersecting volumes.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9183664B2Tiled forward shading with improved depth filtering
Publication Date: 2015.11.10 APPLE INC
  • US9183664B2 patent drawing
  • US9183664B2 patent drawing
  • US9183664B2 patent drawing

AI summary

An image may be divided into tiles, each tile including a multitude of pixels. For each tile, a list of primitive groups that intersect the tile and an initial list of volumes that intersect the tile may be generated. For each primitive group in the list of primitive groups, a per-primitive group list of volumes may be generated. The per-primitive-group list of volumes may include volumes from the initial list of volumes whose depth range overlaps with a depth range of the primitive group. Pixels in the tile which intersect the primitive group may be shaded using the per-primitive-group list of volumes.