Rendering a section view of a 3d mesh in a single pass
US-2024193853-A1 · Jun 13, 2024 · US
US2015161814A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2015161814-A1 |
| Application number | US-201414536070-A |
| Country | US |
| Kind code | A1 |
| Filing date | Nov 7, 2014 |
| Priority date | Dec 11, 2013 |
| Publication date | Jun 11, 2015 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques for performing clipping of graphics primitives 60 with respect to a clipping boundary 65 are described. The clipping step 10 may be performed separately for each tile of a graphics frame to be rendered, after a primitive list for the tile has been read from a primitive memory 38 . Clipping may be performed only for larger primitives whose size exceeds a given threshold. Clipping of a primitive 60 to the clipping boundary 65 may be performed inexactly so that only a single clipped primitive is generated which may extend beyond the clipping boundary. A clipped primitive generated by clipping may be used for a depth function calculation of a primitive setup operation and not for an edge determination.
Opening claim text (preview).
1 . A method of processing graphics primitives for a frame to be displayed, the method comprising steps of: allocating each primitive to at least one of a plurality of tiles forming the frame to be displayed; for each tile, storing in a primitive memory a primitive list identifying vertex data for vertices of the primitives allocated to the corresponding tile; and performing tile processing separately for each tile, the tile processing comprising: (i) reading the primitive list for the tile from the primitive memory; (ii) if the primitive list identifies a target primitive that satisfies a clipping condition, performing a clipping operation for clipping the target primitive with respect to the clipping boundary to generate additional vertex data for at least one additional vertex for a clipped primitive not identified in the primitive list, the clipped primitive extending beyond the clipping boundary by a smaller amount than the target primitive; (iii) performing at least one further graphics processing operation using the vertex data identified in the primitive list and the additional vertex data generated by the clipping operation; and (iv) outputting display data generated by the at least one further graphics processing operation for the tile. 2 . The method according to claim 1 , wherein the additional vertex data generated by the clipping operation is stored in a cache memory having a lower access latency than the primitive memory. 3 . The method according to claim 1 , wherein the additional vertex data is represented by weight values for determining the additional vertex data from the vertex data of the target primitive. 4 . The method according to claim 1 , wherein the clipping boundary corresponds to a boundary of a view frustum. 5 . The method according to claim 1 , wherein the clipping boundary is outside a boundary of a view frustum. 6 . The method according to claim 1 , wherein the clipping condition is satisfied if the target primitive extends beyond the clipping boundary. 7 . The method according to claim 1 , wherein the clipping condition is satisfied if the target primitive extends beyond the clipping boundary and a primitive size parameter indicative of a size of the target primitive exceeds a predetermined threshold. 8 . The method according to claim 1 , wherein the at least one further graphics processing operation comprises at least one of: a primitive setup operation comprising at least one of an edge determination for determining which positions are inside or outside an edge of the primitive and a depth function determination for determining a depth function for determining depth values within the primitive; and a rasterization operation for calculating position data for a plurality of graphics fragments to be used to represent the primitive. 9 . An apparatus for processing graphics primitives for a frame to be displayed, comprising: allocation circuitry configured to allocate each primitive to at least one of a plurality of tiles forming the frame to be displayed; a primitive memory configured to store for each tile a primitive list identifying vertex data for vertices of the primitives allocated to the corresponding tile; and a tile processing pipeline configured to perform tile processing separately for each tile, the tile processing comprising: (i) reading the primitive list for the tile from the primitive memory; (ii) if the primitive list identifies a target primitive that satisfies a clipping condition, performing a clipping operation for clipping the target primitive with respect to the clipping boundary to generate additional vertex data for at least one additional vertex for a clipped primitive not identified in the primitive list, the clipped primitive extending beyond the clipping boundary by a smaller amount than the target primitive; (iii) performing at least one further graphics processing operation using the vertex data identified in the primitive list and the additional vertex data generated by the clipping operation; and (iv) outputting display data generated by the at least one further graphics processing operation for the tile. 10 . An apparatus for processing graphics primitives for a frame to be displayed, comprising: allocation means for allocating each primitive to at least one of a plurality of tiles forming the frame to be displayed; primitive memory means for storing for each tile a primitive list identifying vertex data for vertices of the primitives allocated to the corresponding tile; and tile processing means for performing tile processing separately for each tile, the tile processing comprising: (i) reading the primitive list for the tile from the primitive memory means; (ii) if the primitive list identifies a target primitive that satisfies a clipping condition, performing a clipping operation for clipping the target primitive with respect to the clipping boundary to generate additional vertex data for at least one additional vertex for a clipped primitive not identified in the primitive list, the clipped primitive extending beyond the clipping boundary by a smaller amount than the target primitive; (iii) performing at least one further graphics processing operation using the vertex data identified in the primitive list and the additional vertex data generated by the clipping operation; and (iv) outputting display data generated by the at least one further graphics processing operation for the tile. 11 . A method of processing graphics primitives for display, wherein the primitives have vertex coordinates represented in floating-point format, comprising steps of: determining, based on the vertex coordinates for a target primitive to be processed, a primitive size parameter indicative of a size of the target primitive; if the primitive size parameter exceeds a predetermined threshold, performing a clipping operation on the target primitive with respect to a clipping boundary to generate at least one clipped primitive which extends beyond the clipping boundary by a smaller amount than the target primitive, and performing at least one graphics processing operation using the at least one clipped primitive; and if the primitive size parameter does not exceed the predetermined threshold, omitting the clipping operation for the target primitive and performing the at least one graphics processing operation using the target primitive. 12 . The method according to claim 11 , wherein the primitive size parameter comprises a magnitude of one of the vertex coordinates for the target primitive. 13 . The method according to claim 11 , wherein the predetermined threshold has a value such that a primitive for which the primitive size parameter does not exceed the predetermined threshold is processed by the at least one graphics processing operation without errors caused by loss of floating-point precision. 14 . The method according to claim 11 , wherein the clipping boundary corresponds to a boundary of a view frustum. 15 . The method according to claim 11 , wherein the clipping boundary is outside a boundary of a view frustum. 16 . The method according to claim 11 , wherein the clipping operation clips the target primitive exactly to the clipping boundary to generate the at least one clipped primitive. 17 . The method according to claim 11 , wherein the clipping operation generates a single clipped primitive corresponding to the target primitive; and if a portion of the target primitive lying within the clipping boundary can
General purpose rendering architectures · CPC title
Clipping · CPC title
Processor architectures; Processor configuration, e.g. pipelining · CPC title
Parallel processing · CPC title
Memory management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.