Method of and apparatus for processing graphics
First Claim
1. A method of sorting graphics primitives for rendering into lists representing different areas of a render target to be generated in a tile-based graphics processing system, the method comprising:
- dividing by processing circuitry a render target into plural rendering tiles for rendering purposes;
preparing by processing circuitry primitive lists indicating primitives to be processed for at least two different sets of sub-regions of the render target area, at least one of the two different sets of sub-regions of the render target area comprising sub-regions of the render target area that are bigger than a single rendering tile;
the method further comprising;
for a primitive to be rendered;
determining by processing circuitry sub-regions of at least two of the at least two different sets of sub-regions of the render target area that the primitive could need to be listed for in order to render the primitive;
using a cost function by the processing circuitry to determine plural cost values representing the cost of listing the primitive in the primitive lists for the render target area sub-regions that it has been determined that the primitive could need to be listed for; and
selecting by the processing circuitry which of the render target area sub-regions that it has been determined that the primitive could need to be listed for in order to render the primitive to list the primitive for based on the determined plural cost values, and including the primitive in the primitive lists of those selected sub-regions by the processing circuitry.
1 Assignment
0 Petitions
Accused Products
Abstract
A primitive listing and sorting arrangement for a tile-based graphics rendering system in which primitive lists can be prepared for at least two different sets of sub-regions of the render target area. Two or more alternative solutions for listing the primitive for rendering using the sub-regions of at least two of the at least two different sets of sub-regions of the render target area that primitive lists can be prepared for are determined (S62). A cost function is then used to assess the cost of listing the primitive for each determined alternative primitive listing solution (S63) and the primitive listing arrangement to use is then selected based on the cost assessment (S64). Embodiments use an adaptive cost function that can be modified in use based on analysis of the costs for the primitive listing process actually being experienced in use.
-
Citations
22 Claims
-
1. A method of sorting graphics primitives for rendering into lists representing different areas of a render target to be generated in a tile-based graphics processing system, the method comprising:
-
dividing by processing circuitry a render target into plural rendering tiles for rendering purposes; preparing by processing circuitry primitive lists indicating primitives to be processed for at least two different sets of sub-regions of the render target area, at least one of the two different sets of sub-regions of the render target area comprising sub-regions of the render target area that are bigger than a single rendering tile; the method further comprising; for a primitive to be rendered; determining by processing circuitry sub-regions of at least two of the at least two different sets of sub-regions of the render target area that the primitive could need to be listed for in order to render the primitive; using a cost function by the processing circuitry to determine plural cost values representing the cost of listing the primitive in the primitive lists for the render target area sub-regions that it has been determined that the primitive could need to be listed for; and selecting by the processing circuitry which of the render target area sub-regions that it has been determined that the primitive could need to be listed for in order to render the primitive to list the primitive for based on the determined plural cost values, and including the primitive in the primitive lists of those selected sub-regions by the processing circuitry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for sorting graphics primitives for rendering into lists representing different areas of a render target to be generated in a tile-based graphics processing system, the apparatus comprising:
-
a graphics processor comprising processing circuitry configured to; divide a render target into plural rendering tiles for rendering purposes; and prepare primitive lists indicating primitives to be processed for at least two different sets of sub-regions of the render target area, at least one of the two different sets of sub-regions of the render target area comprising sub-regions of the render target area that are bigger than a single rendering tile; the graphics processor further comprising processing circuitry configured to; determine for a primitive to be rendered, sub-regions of at least two of the at least two different sets of sub-regions of the render target area that the primitive could need to be listed for in order to render the primitive; use a cost function to determine plural cost values representing the cost of listing the primitive in the primitive lists for the render target area sub-regions that it has been determined that the primitive could need to be listed for; and select which of the render target area sub-regions that it has been determined that the primitive could need to be listed for in order to render the primitive to list the primitive for based on the determined plural cost values, and include the primitive in the primitive lists of those sub-regions; and a memory that stores the primitive lists. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A graphics processor for use in a tile-based graphics processing system, the graphics processor comprising processing circuitry configured to:
-
divide a render target into plural rendering tiles for rendering purposes; and prepare primitive lists indicating primitives to be processed for at least two different sets of sub-regions of the render target area, at least one of the two different sets of sub-regions of the render target area comprising sub-regions of the render target area that are bigger than a single rendering tile; the graphics processor further comprising processing circuitry configured to; sort graphics primitives for rendering into lists representing different areas of a render target to be generated; determine for a primitive to be rendered, sub-regions of at least two of at least two different sets of sub-regions of the render target area that the primitive could need to be listed for in order to render the primitive; use a cost function to determine plural cost values representing the cost of listing the primitive in the primitive lists for the render target area sub-regions that it has been determined that the primitive could need to be listed for; and select which of the render target area sub-regions that it has been determined that the primitive could need to be listed for in order to render the primitive to list the primitive for based on the determined plural cost values, and include the primitive in the primitive lists of those sub-regions.
-
-
22. A non-transitory computer readable storage medium storing computer software code which when executing on a processor performs a method of sorting graphics primitives for rendering into lists representing different areas of a render target to be generated in a tile-based graphics processing system, the method comprising:
-
dividing by processing circuitry a render target into plural rendering tiles for rendering purposes; and preparing by processing circuitry primitive lists indicating primitives to be processed for at least two different sets of sub-regions of the render target area, at least one of the two different sets of sub-regions of the render target area comprising sub-regions of the render target area that are bigger than a single rendering tile; the method further comprising; for a primitive to be rendered; determining by processing circuitry sub-regions of at least two of the at least two different sets of sub-regions of the render target area that the primitive could need to be listed for in order to render the primitive; using a cost function by the processing circuitry to determine plural cost values representing the cost of listing the primitive in the primitive lists for the render target area sub-regions that it has been determined that the primitive could need to be listed for; and selecting by the processing circuitry which of the render target area sub-regions that it has been determined that the primitive could need to be listed for in order to render the primitive to list the primitive for based on the determined plural cost values, and including the primitive in the primitive lists of those selected sub-regions by the processing circuitry.
-
Specification