US5136664A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Pixel rendering
Assignee: Stardent Computer Inc
•
Filing: 1988-02-23
•
Granted: 1992-08-04
•
Expires: 2008-02-23
Abstract
Abstract A method for rendering pixels for an object to be displayed in an image, based on parameters defining the object, by generating, in parallel, pixel values for at least some pixels contained in the object, but fewer than all pixels in an image, and repeating that step until all pixels for the object have been rendered.
Inventors
- 👤 Bret B. Bersack
- 👤 Abraham Mammen
- 👤 John W. Poduska, Sr.
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-30 11:13
CPC Classifications
G; G06; G06T; G06T11/00; G06T11/40; G06T15/00; G06T15/50; G06T15/80
Claims Analysis
Total Claims: 28
Claim 1
Independent Claim
100 words
A method for rendering and displaying pixels for an object to be displayed in an image, comprising (a) providing parameters defining said object, (b) selecting at least some pixels contained in said object, but fewer than all pixels in said image, (c) assigning each processor in an array of processors to one of said selected pixels, (d) causing said processor to generate, in parallel, pixel values for said selected pixels based on said parameters, (e) repeating steps (b), (c), and (d) until pixel values have been generated for all pixels for the object, and (f) displaying said rendered pixel values.
Claim 2
Independent Claim
100 words
A method for rendering and displaying pixels for an object to be displayed in an image, comprising (a) providing parameters defining said object, (b) selecting at least some pixels contained in said object, but fewer than all pixels in said image, (c) assigning each processor in an array of processors to one of said selected pixels, (d) causing said processor to generate, in parallel, pixel values for said selected pixels based on said parameters, (e) repeating steps (b), (c), and (d) until pixel values have been generated for all pixels for the object, and (f) displaying said rendered pixel values.
Claim 3
Dependent Claim
34 words
The method of claim 1 further comprising organizing the pixels of said object in an array of non-overlapping blocks, and in each repetition of step (b), selecting only pixels in one of said blocks.
Claim 4
Dependent Claim
31 words
The method of claim 2 further comprising in successive repetitions, traversing successive blocks of the array in an order based on determining which blocks contain pixles within the object being rendered.
Claim 5
Dependent Claim
21 words
The method of claim 3 wherein said array comprises rows and columns of said blocks and said blocks are traversed row-by-row.
Claim 6
Dependent Claim
20 words
The method of claim 1 wherein said selecting comprises selecting pixels that lie within a rectangular block of the image.
Claim 7
Independent Claim
218 words
A method for rendering and displaying pixels for a triangular object to be displayed in an image, said triangular object having three edges and three vertices defined by X and Y coordinates, said method comprising (a) providing parameters defining said object, (b) organizing the pixels of said object in an array of non-overlapping blocks each of which contains fewer than all pixels in said image, said array of blocks comprising rows and columns of said blocks, (c) choosing a block in which pixels are to be rendered in a manner such that the first chosen block is a block in which one of said vertices lies and is positioned such that pixels of said object may be rendered by traversing, in successive repetitions, successive blocks of said array beginning at said first block and proceeding row by row in an order based on determining which blocks contain pixels within the object being rendered such that the traversal along each row is always in the same direction and the traversal from each row to the next row is always in the same direction, (d) generating, in parallel, pixel values for said chosen block based on said parameters, (e) repeating steps (c) and (d) until all pixels for the object have been rendered, and (f) displaying said rendered pixel values.
Claim 8
Independent Claim
218 words
A method for rendering and displaying pixels for a triangular object to be displayed in an image, said triangular object having three edges and three vertices defined by X and Y coordinates, said method comprising (a) providing parameters defining said object, (b) organizing the pixels of said object in an array of non-overlapping blocks each of which contains fewer than all pixels in said image, said array of blocks comprising rows and columns of said blocks, (c) choosing a block in which pixels are to be rendered in a manner such that the first chosen block is a block in which one of said vertices lies and is positioned such that pixels of said object may be rendered by traversing, in successive repetitions, successive blocks of said array beginning at said first block and proceeding row by row in an order based on determining which blocks contain pixels within the object being rendered such that the traversal along each row is always in the same direction and the traversal from each row to the next row is always in the same direction, (d) generating, in parallel, pixel values for said chosen block based on said parameters, (e) repeating steps (c) and (d) until all pixels for the object have been rendered, and (f) displaying said rendered pixel values.
Claim 9
Dependent Claim
110 words
The method of claim 6 comprising traversing said array of blocks by (a) rendering pixels in said first block, (b) if the next block in the row after said first block includes a pixel contained in the triangle to be rendered, rendering pixels in that next block, (c) repeating step (b) until at least all blocks in the row that include a pixel contained in the triangle have been rendered, (d) rendering pixels in the block in the next row beginning with the first block in said row that includes a pixel contained in the triangle, and (e) repeating steps (b) through (d) until the entire triangle has been rendered.
Claim 10
Dependent Claim
39 words
The method of claim 7 further comprising storing, in step (a), the identity of the first block in the next row of blocks that includes a pixel contained in the triangle to be rendered for use in step (d).
Claim 11
Dependent Claim
38 words
The method of claim 7 further comprising determining whether a block includes a pixel contained in the triangle to be rendered by testing whether a pixel in an appropriate corner of said block is inside of the triangle.
Claim 12
Independent Claim
187 words
A method for rendering and displaying pixels for a spherical object to be displayed in an image, said spherical object lying on a center defined by X and Y coordinates, said method comprising (a) providing parameters defining said object, (b) organizing the pixels of said object in an array of non-overlapping blocks each of which contains fewer than all pixels in said image, said array of blocks comprising rows and columns of said blocks, (c) choosing a block in which pixels are to be rendered in a manner such that the first chosen block is a block containing a pixel that lies on the circumference of said sphere and on a radius of said sphere which lies along the X or Y axis, (d) generating, in parallel, pixel values for said chosen block based on said parameters, (e) repeating steps (c) and (d) for successive blocks until all pixels for the object have been rendered, and, in successive repetitions, traversing successive blocks of the array in an order based on determining which blocks contain pixels within the object being rendered, and (f) displaying said rendered pixel values.
Claim 13
Independent Claim
187 words
A method for rendering and displaying pixels for a spherical object to be displayed in an image, said spherical object lying on a center defined by X and Y coordinates, said method comprising (a) providing parameters defining said object, (b) organizing the pixels of said object in an array of non-overlapping blocks each of which contains fewer than all pixels in said image, said array of blocks comprising rows and columns of said blocks, (c) choosing a block in which pixels are to be rendered in a manner such that the first chosen block is a block containing a pixel that lies on the circumference of said sphere and on a radius of said sphere which lies along the X or Y axis, (d) generating, in parallel, pixel values for said chosen block based on said parameters, (e) repeating steps (c) and (d) for successive blocks until all pixels for the object have been rendered, and, in successive repetitions, traversing successive blocks of the array in an order based on determining which blocks contain pixels within the object being rendered, and (f) displaying said rendered pixel values.
Claim 14
Dependent Claim
67 words
The method of claim 10 comprising traversing said array of blocks by (a) rendering pixels in said first block, (b) traversing blocks along a first row on either side of said first block until at least all blocks in the row that include a pixel contained in the sphere have been rendered, and (c) repeating step (b) in successive rows until the entire sphere has been rendered.
Claim 15
Independent Claim
121 words
A method for rendering and displaying pixels for a line object to be displayed in an image, comprising (a) providing parameters defining said object, (b) organizing the pixels of said object in an array of non-overlapping blocks each of which contains fewer than all pixels in said image, (c) representing said line as two parallel edges, (d) selecting one of said blocks and generating, in parallel, pixel values for the pixels of said selected block based on said parameters, (e) repeating step (d) until all pixels for the line have been rendered, the repeating being performed by traversing said two parallel edges in successive rows of said blocks along the length of said line, and (f) displaying said rendered pixel values.
Claim 16
Independent Claim
121 words
A method for rendering and displaying pixels for a line object to be displayed in an image, comprising (a) providing parameters defining said object, (b) organizing the pixels of said object in an array of non-overlapping blocks each of which contains fewer than all pixels in said image, (c) representing said line as two parallel edges, (d) selecting one of said blocks and generating, in parallel, pixel values for the pixels of said selected block based on said parameters, (e) repeating step (d) until all pixels for the line have been rendered, the repeating being performed by traversing said two parallel edges in successive rows of said blocks along the length of said line, and (f) displaying said rendered pixel values.
Claim 17
Dependent Claim
14 words
The method of claim 12 wherein said two parallel edges are one pixel apart.
Claim 18
Dependent Claim
90 words
Apparatus for rendering pixles for an object to be displayed as part of an image that includes a plurality of arrays of pixels, each of which is smaller than the complete array of pixels in the image to be displayed, the apparatus comprising an array of processors for rendering, in parallel, corresponding pixles in each said array of pixels, and a controller for directing the array of processors to work in sequence on a succession of said arrays of pixels that include pixels contained in the object to be rendered.
Claim 19
Dependent Claim
90 words
Apparatus for rendering pixles for an object to be displayed as part of an image that includes a plurality of arrays of pixels, each of which is smaller than the complete array of pixels in the image to be displayed, the apparatus comprising an array of processors for rendering, in parallel, corresponding pixles in each said array of pixels, and a controller for directing the array of processors to work in sequence on a succession of said arrays of pixels that include pixels contained in the object to be rendered.
Claim 20
Dependent Claim
17 words
The apparatus of claim 14 wherein all processors in said array execute a common sequence of instructions.
Claim 21
Dependent Claim
21 words
The apparatus of claim 15 wherein said sequence of instructions includes instructions that mat be conditionally executed by a given processor.
Claim 22
Dependent Claim
128 words
Apparatus for rendering pixels for an object to be displayed as part of an image that includes a plurality of arrays of pixels, each of which is smaller than the complete array of pixels in the image to be displayed, the apparatus comprising an array of processors for rendering, in parallel, respective pixels in corresponding arrays of said pixels, said processors executing a sequence of instructions that includes routines that enable each processor to determine whether the pixel that it is assigned to render within an array of pixels is contained in the object to be rendered, and a controller for directing the array of processors to work in sequence on a succession of said arrays of pixels that include pixels contained in the object to be rendered.
Claim 23
Dependent Claim
128 words
Apparatus for rendering pixels for an object to be displayed as part of an image that includes a plurality of arrays of pixels, each of which is smaller than the complete array of pixels in the image to be displayed, the apparatus comprising an array of processors for rendering, in parallel, respective pixels in corresponding arrays of said pixels, said processors executing a sequence of instructions that includes routines that enable each processor to determine whether the pixel that it is assigned to render within an array of pixels is contained in the object to be rendered, and a controller for directing the array of processors to work in sequence on a succession of said arrays of pixels that include pixels contained in the object to be rendered.
Claim 24
Dependent Claim
172 words
Apparatus for rendering pixels for an object to be displayed as part of an image that includes a plurality of arrays of pixels, each of which is smaller than the complete array of pixels in the image to be displayed, the apparatus comprising an array of processors for rendering, in parallel, respective pixels in corresponding arrays of said pixels, said rendering being accomplished by calculating a value for each pixel based on a function that depends on the position of the pixel, one said processor, having a predetermined position in said array of processors, serves as a canonical processor assigned an initial value for said function, and each processor in said array calculates an initial value for its corresponding pixel based on the initial value for said canonical processor and on the position of said processor relative to said canonical processor, and a controller for directing the array of processors to work in sequence on a succession of said arrays of pixels that include pixels contained in the object to be rendered.
Claim 25
Dependent Claim
172 words
Apparatus for rendering pixels for an object to be displayed as part of an image that includes a plurality of arrays of pixels, each of which is smaller than the complete array of pixels in the image to be displayed, the apparatus comprising an array of processors for rendering, in parallel, respective pixels in corresponding arrays of said pixels, said rendering being accomplished by calculating a value for each pixel based on a function that depends on the position of the pixel, one said processor, having a predetermined position in said array of processors, serves as a canonical processor assigned an initial value for said function, and each processor in said array calculates an initial value for its corresponding pixel based on the initial value for said canonical processor and on the position of said processor relative to said canonical processor, and a controller for directing the array of processors to work in sequence on a succession of said arrays of pixels that include pixels contained in the object to be rendered.
Claim 26
Dependent Claim
44 words
The apparatus of claim 18 further comprising microprogram instructions executable by each said processor and capable of multiplying a value by 0, 1, -1, or -2 and adding another number to the result, whereby the initial values for one processor may be calculated quickly.
Claim 27
Dependent Claim
19 words
The apparatus of claim 18 wherein said array is 4×4 and said canonical processor is located at position 1,1.
Claim 28
Dependent Claim
25 words
The apparatus of claim 18 wherein each processor comprises logical operations enabling the generation of a combined pixel write enable flag from several containment equations.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1995-08-04 | 1996-02-03 | 1996-08-04 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1999-08-04 | 2000-02-03 | 2000-08-04 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2003-08-04 | 2004-02-03 | 2004-08-04 | $7700.00 | Window Closed / Lapsed |