US 12,243,149 B2
Graphics processing
Wei Shao, Cambridge (GB); and Frank Klaeboe Langtind, Melhus (NO)
Assigned to Arm Limited, Cambridge (GB)
Filed by Arm Limited, Cambridge (GB)
Filed on Mar. 15, 2023, as Appl. No. 18/184,094.
Claims priority of application No. 2203563 (GB), filed on Mar. 15, 2022.
Prior Publication US 2023/0298249 A1, Sep. 21, 2023
Int. Cl. G06T 15/00 (2011.01); G06T 11/40 (2006.01); G06T 15/80 (2011.01)
CPC G06T 15/005 (2013.01) [G06T 11/40 (2013.01); G06T 15/80 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method of performing tile-based graphics processing, in which a render output to be generated is processed as a plurality of tiles for rendering purposes, the method comprising:
performing a first vertex shading operation on one or more vertices of a set of vertices for a set of primitives to be processed for generating a render output, each vertex having associated with it a plurality of vertex attributes, the first vertex shading operation generating vertex shaded attribute data for at least some but not all of the plurality of vertex attributes of the one or more vertices, and including at least generating vertex shaded position data for the one or more vertices; and
using the vertex shaded position data generated by the first vertex shading operation to prepare primitive lists indicative of which primitives of the set of primitives should be rendered for respective rendering tiles that the render output being generated has been divided into for rendering purposes;
the method further comprising:
when processing primitives for a tile of the render output being generated:
rasterising primitives to be processed for the tile to generate corresponding fragments for rendering the primitives;
performing culling testing before rendering fragments; and
subjecting fragments generated by the rasteriser that pass the culling testing to rendering;
wherein the method further comprises:
performing a second vertex shading operation for vertices of primitives for which fragments have been generated by the rasteriser prior to rendering the graphics fragments, to generate vertex shaded attribute data for at least one other vertex attribute of the plurality of vertex attributes of the vertices for which vertex attribute data was not generated in the first vertex shading operation, based on the results of the culling testing before rendering fragments generated by the rasteriser.