← Back to Patent Explorer
US5852443A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system for memory decomposition in a graphics rendering system

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-06-27
•
Granted: 1998-12-22
•
Expires: 2016-06-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

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.

Inventors

  • 👤 Mark L. Kenworthy

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 20:45
CPC Classifications
G; G06; G06T; G06T11/00; G06T11/10; G06T11/40; G06T13/00; G06T13/80; G06T15/00; G06T15/005; G06T15/04; G06T15/50; G06T15/60

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 153 words
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 S 1 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 S 2 ; rendering serially the two or more image regions of size S 2 including rasterizing a first sub-set of the first set of geometric primitives for a first image region of size S 2 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 S 2 .
Claim 2
Dependent Claim 153 words
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 S 1 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 S 2 ; rendering serially the two or more image regions of size S 2 including rasterizing a first sub-set of the first set of geometric primitives for a first image region of size S 2 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 S 2 .
Claim 3
Dependent Claim 55 words
The method of claim 1 wherein the dividing step includes: evaluating the size S 1 of the first image region, and based on the size of the first image region, determining the size of S 2 ; and dividing the first image region of size S 1 into image regions of size S 2 .
Claim 4
Dependent Claim 44 words
The method of claim 1 wherein the dividing step includes hierarchically dividing the image region of size S 1 into four image regions, each of the four image regions being one-fourth the size of the size of the first image region S 1 .
Claim 5
Dependent Claim 19 words
The method of claim 1 further including sorting the geometric primitives among image regions of size S 1 .
Claim 6
Dependent Claim 23 words
The method of claim 1 further including clearing the fragment buffer in response to determining that the fragment entries exceed the predetermined value.
Claim 7
Dependent Claim 75 words
The method of claim 1 further including: clearing the fragment buffer in response to determining that the fragment entries exceed the predetermined value; and and wherein the step of rasterizing the first sub-set of the first set of geometric primitives for the first image region of size S 2 includes reading the first set of geometric primitives and rejecting any primitives that do not project onto the first image region of Size S 2 .
Claim 8
Dependent Claim 95 words
The method of claim 1 including: clearing the fragment buffer in response to determining that the number of fragment entries exceed the predetermined value; sorting the first set of geometric primitives among the two or more image regions of size S 2 to produce two or more corresponding sub-sets of the first set of geometric primitives, and wherein the step of rasterizing the first sub-set of the first set of geometric primitives for the first image region of size S 2 includes rasterizing one of the corresponding sub-sets of the first set of geometric primitives.
Claim 9
Dependent Claim 39 words
The method of claim 1 including: incrementing a fragment buffer counter to keep track of the number of fragment buffer entries in the fragment buffer; and wherein the determining step includes evaluating a value of the fragment buffer counter.
Claim 10
Dependent Claim 98 words
The method of claim 1 further including: storing the first corresponding set of pixel fragments in the fragment buffer, determining whether a number of fragment entries in the fragment buffer exceed a predetermined value as the first corresponding set of pixel fragments are added to the fragment buffer; and in response to determining that the number of fragment entries in the fragment buffer exceed the predetermined value while rasterizing the first sub-set of the first set of geometric primitives, dividing the image regions of size S 2 into two or more image regions of size S 3 .
Claim 11
Dependent Claim 15 words
The method of claim 1 wherein the pixel fragments include color, coverage, and depth data.
Claim 12
Dependent Claim 16 words
The method of claim 1 wherein the pixel fragments include color, coverage, opacity, and depth data.
Claim 13
Independent Claim 176 words
A method for rendering geometric primitives comprising: rasterizing geometric primitives in a set of geometric primitives for a first image region of size S 1 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 S 2 rasterizing a first sub-set of the set of geometric primitives to a first image region of size S 2 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 S 2 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.
Claim 14
Independent Claim 176 words
A method for rendering geometric primitives comprising: rasterizing geometric primitives in a set of geometric primitives for a first image region of size S 1 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 S 2 rasterizing a first sub-set of the set of geometric primitives to a first image region of size S 2 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 S 2 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.
Claim 15
Dependent Claim 97 words
The method of claim 12 including: monitoring memory consumed in storing the pixel fragments corresponding to the first sub-set, in response to detecting that a second memory threshold has been attained: sub-dividing the first image region of size S 2 into two or more image regions of size S 3 ; rasterizing a third sub-set of the set of geometric primitives to a first image region of size S 3 and as a result of rasterizing the third sub-set, generating pixel fragments corresponding to the third sub-set; and storing the pixel fragments corresponding to the third sub-set.
Claim 16
Dependent Claim 160 words
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 S 1 , and for image sub-regions of size S 2 ; 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.
Claim 17
Dependent Claim 160 words
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 S 1 , and for image sub-regions of size S 2 ; 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.
Claim 18
Dependent Claim 120 words
The apparatus of claim 14 further including a pixel memory having a size S 1 and including sub-regions of size S 2 ; wherein the pixel engine is operable to control transfer of the selected pixel data to the fragment and pixel memories, wherein the pixel engine is communication with the fragment and pixel memories to store the selected pixel data in the pixel or fragment memories; and wherein the buffer control circuitry is in communication with the rasterizer to cause the rasterizer to rasterize a sub-set of the geometric primitives for an image region of size S 2 to a corresponding sub-region of the pixel memory when the memory usage of the fragment memory has attained the predetermined value.
Claim 19
Dependent Claim 64 words
The apparatus of claim 14 wherein the rasterizer is operable to generate pixel data for image regions of size S 1 , and for image sub-regions of size S 2 , which are sub-regions of the image regions of size S 1 , and for image sub-regions of size S 3 , which are sub-regions of the image regions of size S 2 .
Claim 20
Dependent Claim 58 words
The apparatus of claim 16 wherein the pixel memory has a size S 1 and has sub-regions of sizes S 2 and S 3 ; and wherein the rasterizer is operable to generate the pixel data for the image regions of size S 1 , S 2 , or S 3 to corresponding regions of the pixel memory.
Claim 21
Dependent Claim 29 words
The apparatus of claim 17 wherein the rasterizer is operable to sub-divide the pixel memory hierarchically when the memory usage of the fragment memory has attained the predetermined value.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-12-21 2002-06-22 2002-12-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-12-21 2006-06-22 2006-12-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-12-21 2010-06-22 2010-12-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag