Vertex shaders for binning based graphics processing
AssigneeQUALCOMM Incorporated
InventorsMaxim Kazakov, Andrew Evan Gruber
Life of this patent
Estimating the term…
Abstract
This disclosure describes examples of using two vertex shaders each one during different graphics processing passes in a binning architecture for graphics processing. A first vertex shader processes subset of attributes of a vertex in a binning pass, where the subset of attributes include those that contribute to visibility determination and attributes that may benefit from being processed with a vertex shader that provides functional flexibility. A second, different vertex shader processes another subset of attributes of the vertex in the rendering pass.
Claims28
A method of processing data, the method comprising:
- receiving from a vertex buffer a first subset of attributes of a vertex;
- processing the first subset of attributes of the vertex with a first vertex shader of a graphics processing unit (GPU) to generate a first subset of processed attributes;
- receiving from the vertex buffer a second subset of attributes of the same vertex;
- processing the second subset of attributes of the same vertex with a second, different vertex shader of the GPU to generate a second subset of processed attributes;
- and
- generating graphics data for display based on the first subset of processed attributes and the second subset of processed attributes.
A device for processing data, the device comprising:
- a system memory comprising a vertex buffer configured to store a first subset of attributes of a vertex and a second subset of attributes of the same vertex;
- a graphics processing unit (GPU) comprising binning pass circuitry and rendering pass circuitry,
- wherein the binning pass circuitry is configured to:
- receive the first subset of attributes of the vertex;
- and
- process the first subset of attributes with a first vertex shader to generate a first subset of processed attributes, and
- wherein the rendering pass circuitry is configured to:
- receive the second subset of attributes of the vertex;
- process the second subset of attributes with a second, different vertex shader to generate a second subset of processed attributes;
- and
- generate graphics data for display based on the first subset of processed attributes and the second subset of processed attributes.
A computer-readable storage medium having instructions stored thereon that when executed cause a graphics processing unit (GPU) to:
- receive from a vertex buffer a first subset of attributes of a vertex;
- process the first subset of attributes of the vertex with a first vertex shader of the GPU to generate a first subset of processed attributes;
- receive from the vertex buffer a second subset of attributes of the same vertex;
- process the second subset of attributes of the same vertex with a second, different vertex shader of the GPU to generate a second subset of processed attributes;
- and
- generate graphics data for display based on the first subset of processed attributes and the second subset of processed attributes.
A device for processing data, the device comprising:
- means for receiving from a vertex buffer a first subset of attributes of a vertex;
- means for processing the first subset of attributes of the vertex with a first vertex shader of a graphics processing unit (GPU) to generate a first subset of processed attributes;
- means for receiving from the vertex buffer a second subset of attributes of the same vertex;
- means for processing the second subset of attributes of the same vertex with a second, different vertex shader of the GPU to generate a second subset of processed attributes;
- and
- means for generating graphics data for display based on the first subset of processed attributes and the second subset of processed attributes.
Dependencies are inferred from the claim text.