Pixel Shader Vertex Computation Inversion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Graphics processing bottlenecks occur due to inefficiencies in data throughput and copying of parameter values between vertex and pixel shaders, limiting rendering performance and the control developers have over visual parameters in graphics pipelines.

Innovation Solution

The method involves writing vertex indices from a vertex shader to a cache and allowing pixel shaders to access these indices directly from memory, enabling them to perform vertex shader computations and interpolation, thereby reducing bottlenecks and increasing rendering efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If vertex shaders perform all vertex shader computations and write parameter values to cache, then rendering completeness is ensured, but data throughput bottlenecks occur and rendering performance decreases

Engineering Contradiction:
Improverendering performanceVSAvoiddata copying time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent inverts the traditional shader execution model by allowing pixel shaders to perform vertex shader computations. Instead of vertex shaders writing all parameter values to cache for pixel shader access, pixel shaders directly access vertex parameter values from memory and perform both vertex and pixel shader computations, eliminating the data copying bottleneck while ensuring rendering completeness through controlled access patterns

Inventive Principle:
Principle #13The other way round (Inversion)

2Adaptability or versatility

If vertex shaders output all parameter values to cache, then pixel shaders have complete data for computations, but memory bandwidth is consumed and bottlenecks occur

Engineering Contradiction:
Improvecontrol over visual parametersVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent extracts only the essential vertex indices from vertex shader output to cache, while pixel shaders directly access the full vertex parameter values from memory using these indices. This extraction approach provides complete data access for adaptability while avoiding the energy cost of copying all parameter values through the cache, as pixel shaders fetch only the specific parameters they need directly from memory

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP3008700B1Fragment shaders perform vertex shader computations
Publication Date: 2020.08.12 SONY INTERACTIVE ENTERTAINMENT LLC
  • EP3008700B1 patent drawingFigure 1A~1C
  • EP3008700B1 patent drawingFigure 1D
  • EP3008700B1 patent drawingFigure 1E

AI summary

Graphics processing may include implementing a vertex shader and a pixel shader with the GPU. Vertex indices output from a vertex shader may be written to a cache. The vertex indices written to the cache may be accessed with the pixel shader and vertex parameter values associated with the vertex indices may be accessed from a memory unit with the pixel shader. It is emphasized that this abstract is provided to comply with the rules requiring an abstract that will allow a searcher or other reader to quickly ascertain the subject matter of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.