Method and system for memory decomposition in a graphics rendering system
First Claim
Patent Images
1. In a graphics rendering system, a method of rendering geometric primitives, the method comprising:
- rasterizing a first set of the geometric primitives for a first image region of size S1 to generate pixel fragments;
storing the pixel fragments as fragment entries in a fragment buffer,determining whether a number of fragment entries in the fragment buffer exceed a predetermined value;
in response to determining that the number of fragment entries exceed the predetermined value, dividing the first image region into two or more image regions of a size S2 ;
rendering serially the two or more image regions of size S2 including rasterizing a first sub-set of the first set of geometric primitives for a first image region of size S2 to generate first corresponding pixel fragments, resolving the first corresponding pixel fragments, and repeating the rasterizing and resolving steps for subsequent image regions of size S2.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for memory decomposition in a graphics rendering system with a pixel fragment memory includes tracking memory usage of the fragment memory to determine when a threshold is attained, and in response, separately rasterizing geometric primitives to smaller image regions. The system includes a pixel memory that can be hierarchically decomposed into smaller regions corresponding to a portion of the image currently being rendered. This hierarchical sub-division can be performed while rendering a scene and can be performed recursively to ensure that the capacity of the fragment buffer is not exceeded.
165 Citations
18 Claims
-
1. In a graphics rendering system, a method of rendering geometric primitives, the method comprising:
-
rasterizing a first set of the geometric primitives for a first image region of size S1 to generate pixel fragments; storing the pixel fragments as fragment entries in a fragment buffer, determining whether a number of fragment entries in the fragment buffer exceed a predetermined value; in response to determining that the number of fragment entries exceed the predetermined value, dividing the first image region into two or more image regions of a size S2 ; rendering serially the two or more image regions of size S2 including rasterizing a first sub-set of the first set of geometric primitives for a first image region of size S2 to generate first corresponding pixel fragments, resolving the first corresponding pixel fragments, and repeating the rasterizing and resolving steps for subsequent image regions of size S2. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for rendering geometric primitives comprising:
-
rasterizing geometric primitives in a set of geometric primitives for a first image region of size S1 and as a result of rasterizing the geometric primitives, generating pixel fragments corresponding to the geometric primitives; storing the pixel fragments in a fragment memory; monitoring memory consumed in storing the pixel fragments; in response to detecting that a first memory threshold has been attained; sub-dividing the first image region into two or more image regions of size S2 rasterizing a first sub-set of the set of geometric primitives to a first image region of size S2 and as a result of rasterizing the first sub-set, generating pixel fragments corresponding to the first sub-set; storing the pixel fragments corresponding to the first sub-set, rasterizing a second sub-set of the set of geometric primitives to a second image region of size S2 and as a result of rasterizing the second sub-set, generating pixel fragments corresponding to the second sub-set; and storing the pixel fragments corresponding to the second sub-set. - View Dependent Claims (13)
-
-
14. Apparatus for rendering geometric primitives to compute a display image, the apparatus comprising:
-
a fragment memory; a rasterizer operable to read the geometric primitives, and operable to generate pixel data for image regions of size S1, and for image sub-regions of size S2 ; a pixel engine in communication with the rasterizer, the pixel engine operable to receive the pixel data and operable to control transfer of selected pixel data to the fragment memory, the pixel engine in communication with fragment memory to store the selected pixel data in the fragment memory; and buffer control circuitry in communication with the fragment memory, the buffer control circuitry operable to determine whether memory usage of the fragment memory has attained a predetermined value, and in communication with the rasterizer to cause the rasterizer to rasterize a sub-set of the geometric primitives for one of the sub-regions when the memory usage of the fragment memory has attained the predetermined value. - View Dependent Claims (15, 16, 17, 18)
-
Specification