IP Library Granted Patent US 11,972,520
Granted Patent B2
US 11,972,520 · App. 17/854,406 · Granted Apr 30, 2024

Graphics processing system and method of rendering

Inventor: Enrique de Lucas (Hertfordshire, GB)
Assignee: Imagination Technologies Limited
G06T15/005G06T15/40G06T17/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,972,520
App. No.
17/854,406
Granted
Apr 30, 2024
Kind
B2
Abstract

A method of rendering, in a rendering space, a scene formed by primitives in a graphics processing system. A geometry processing phase includes the step of storing fragment shading rate data representing a first fragment shading rate value and associating data identifying a primitive with the fragment shading rate data. A rendering phase includes the steps of retrieving the stored fragment shading rate data and associated data identifying the primitive, obtaining an attachment specifying one or more attachment fragment shading rate values for the rendering space; processing the primitive to derive primitive fragments to be shaded; and for each primitive fragment, combining the first fragment shading rate value for the primitive from which the primitive fragment is derived with an attachment fragment shading rate value from the attachment to produce a resolved combined fragment shading rate value for the respective fragment.

Claims (41)

1. A method of rendering, in a rendering space, a scene formed by primitives in a graphics processing system, the method comprising:

a geometry processing phase, comprising the step of:

storing fragment shading rate data representing a first fragment shading rate value and associating data identifying a primitive with the fragment shading rate data; and

a rendering phase comprising the steps of:

retrieving the stored fragment shading rate data and associated data identifying the primitive,

obtaining an attachment specifying one or more attachment fragment shading rate values for the rendering space,

processing the primitive to derive primitive fragments to be shaded, and

for each primitive fragment, combining the first fragment shading rate value for the primitive from which the primitive fragment is derived with an attachment fragment shading rate value from the attachment to produce a resolved combined fragment shading rate value for the respective fragment.

2. The method of claim 1 , wherein the rendering phase further comprises a shading step of, for each fragment, using the respective resolved combined fragment shading rate value to shade the fragment.

3. The method of claim 2 , wherein the rendering phase further comprises a step of performing hidden surface removal before the shading step, and the step of combining the first fragment shading rate value with the attachment fragment shading rate value occurs after the step of performing hidden surface removal.

4. The method of claim 1 , wherein the graphics processing system is a tile-based graphics processing system, and the rendering phase is performed on a tile-by-tile basis.

5. The method of claim 4 , wherein the rendering phase further comprises, for each tile, determining regions within the tile corresponding to different attachment fragment shading rate values.

6. The method of claim 5 , wherein, for each primitive fragment, the step of combining the first fragment shading rate value with the attachment fragment shading rate value further comprises determining which region within the tile the fragment falls in, to determine the attachment fragment shading rate value to use to produce the resolved combined fragment shading rate value.

7. The method of claim 1 , wherein the first fragment shading rate value is a preliminary combined fragment shading rate value.

8. The method of claim 7 , wherein the geometry processing phase further comprises a step of combining a pipeline fragment shading rate value and a primitive fragment shading rate value for the primitive to produce the preliminary combined fragment shading rate value.

9. The method of claim 7 , wherein:

the step of storing further comprises storing the fragment shading rate data, and the associated data identifying the primitive with the fragment shading rate data, in a primitive block; and

the step of retrieving further comprises retrieving the stored fragment shading rate data and associated data identifying the primitive from the primitive block.

10. The method of claim 9 , wherein:

the step of storing further comprises storing data in the primitive block identifying a plurality of primitives with the fragment shading rate data; and

the stored fragment shading rate data and associated data is used to produce resolved combined fragment shading rate values for fragments derived from any of the plurality of primitives.

11. A non-transitory computer readable storage medium having stored thereon computer readable code configured to cause the method as set forth in claim 1 to be performed when the code is run.

12. A graphics processing system configured to render, in a rendering space, a scene formed by primitives, the system comprising:

geometry processing logic configured to:

store fragment shading rate data representing a first fragment shading rate value and associating data identifying a primitive with the fragment shading rate data; and

rendering logic configured to:

retrieve the stored fragment shading rate data and associated data identifying the primitive,

obtain an attachment specifying one or more attachment fragment shading rate values for the rendering space,

process the primitive to derive primitive fragments to be shaded, and

for each primitive fragment, combine the first fragment shading rate value for the primitive from which the primitive fragment is derived with an attachment fragment shading rate value from the attachment to produce a resolved combined fragment shading rate value for the respective fragment.

13. The system of claim 12 , wherein the graphics processing system is a tile-based graphics processing system, and the rendering logic is configured to perform rendering on a tile-by-tile basis.

14. The system of claim 12 , wherein the first fragment shading rate value is a preliminary combined fragment shading rate value.

15. The system of claim 14 , wherein:

the geometry processing logic is further configured to store the fragment shading rate data, and the associated data identifying the primitive with the fragment shading rate data, in a primitive block; and

the rendering logic is further configured to retrieve the stored fragment shading rate data and associated data identifying the primitive from the primitive block.

16. The system of claim 15 , wherein:

the step of storing further comprises storing data in the primitive block identifying a plurality of primitives with the fragment shading rate data; and

the stored fragment shading rate data and associated data is used to produce resolved combined fragment shading rate values for fragments derived from any of the plurality of primitives.

17. The graphics processing system of claim 12 , wherein the graphics processing system is embodied in hardware on an integrated circuit.

18. A non-transitory computer readable storage medium having stored thereon an integrated circuit definition dataset that, when processed in an integrated circuit manufacturing system, configures the integrated circuit manufacturing system to manufacture a graphics processing system as set forth in claim 12 .

19. An integrated circuit manufacturing system configured to manufacture a graphics processing system as set forth in claim 12 .

Assignments (2)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2023
From: DE LUCAS, ENRIQUE
To: IMAGINATION TECHNOLOGIES LIMITED
Reel/Frame 065250/0035 →