Method and system for generating images using Gsprites
First Claim
1. In a system for generating images in a view space at a computational rate, a method of generating images comprising:
- assigning objects in a view volume for a current image to at least two gsprites;
independently rendering the objects to the at least two gsprites;
storing the at least two gsprites;
deriving a 2D geometric transform from characteristic points of a 3D object to simulate geometric motion of the 3D object over time;
applying the 2D geometric transform to a gsprite representing a rendering of the 3D object to simulate the geometric motion of the 3D object;
compositing the at least two gsprites, including the transformed gsprite, to generate the current image at the computational rate; and
repeating the above steps to generate subsequent images for subsequent computational periods.
3 Assignments
0 Petitions
Accused Products
Abstract
In an image processing system, a method for generating a images includes rendering graphical models comprising a scene to separate image layers called "gsprites," and then compositing these image layers to generate an image. An image processor can retrieve gsprites from memory, transform them, and composite them for display at video rates. Gsprites can be re-rendered or updated at different rates. Reducing the rendering overhead of the system, the image processor can perform an affine transformation on the gsprite to approximate motion of the graphical object that it represents, rather than re-render the object. Objects in a scene can be queued for re-rendering based on a predefined update rate, or based on the accuracy of representing the object with a transformed gsprite, rendered for a previously displayed image.
434 Citations
38 Claims
-
1. In a system for generating images in a view space at a computational rate, a method of generating images comprising:
-
assigning objects in a view volume for a current image to at least two gsprites; independently rendering the objects to the at least two gsprites; storing the at least two gsprites; deriving a 2D geometric transform from characteristic points of a 3D object to simulate geometric motion of the 3D object over time; applying the 2D geometric transform to a gsprite representing a rendering of the 3D object to simulate the geometric motion of the 3D object; compositing the at least two gsprites, including the transformed gsprite, to generate the current image at the computational rate; and repeating the above steps to generate subsequent images for subsequent computational periods. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. In a graphics rendering system for generating a series of images for a view space displayed at a refresh rate, a method for generating a current image for a view space, the method comprising:
-
storing gsprites displayed in one or more previous images of the series of images; determining whether to update one or more of tie stored gsprites for the current image; updating at least a first gsprite of the stored gsprites by rendering a first object to the first gsprite based on inputs to the graphics rendering system describing the location of the first object in a scene represented in the current image; deriving a 2D geometric transform from characteristic points of a 3D object to simulate geometric motion of the 3D object over time, applying the 2D geometric transform to a gsprite representing a rendering of the 3D object to simulate the geometric motion of the 3D object; and compositing the first gsprite with at least a sub-set of the stored gsprites and at least a portion of the transformed gsprite for display as the current image. - View Dependent Claims (22, 23, 24, 25, 26, 27)
-
-
28. An image processing system for generating a display image using gsprites, the system comprising:
-
gsprite memory; an image pre-processor receiving input describing location of objects and a viewpoint, for determining which of the objects intersect with a view volume, for assigning objects intersecting with the view volume to gsprites, and for computing affine transforms used to transform the gsprites by deriving an affine transform from a change in position of characteristic points of a 3D object to simulate geometric motion of the 3D object over time; and an image processor coupled to the image pre-processor for rendering the objects to respective gsprites, for storing the gsprites to the gsprite memory, for reading the gsprites from the gsprite memory and transforming the gsprites to physical output device coordinates according to the affine transforms, and for compositing the rendered gsprites for display on the physical output device. - View Dependent Claims (29, 30, 31, 32, 33, 34, 37, 38)
-
-
35. A computer-readable medium on which is stored a computer program for processing gsprites, said computer program comprising instructions, which when executed by a computer, perform the steps of:
-
computing an affine transform from characteristic points for an object at first and second view space periods; performing an affine transformation on the characteristic points for the object at the first view space period to find transformed characteristic points; and comparing the transformed characteristic points with the characteristic points at the second view space period to determine accuracy of the affine transform.
-
-
36. In a graphics rendering system for rendering objects in a scene to generate frames of images at a frame refresh rate, a method of generating images comprising:
-
assigning the objects in a view volume for a current image to separate gsprites; independently rendering the objects to the gsprites; deriving an affine transform from characteristic points of at least one 3D object to simulate geometric motion of the 3D object over time; storing the gsprites in memory; retrieving the gsprites from memory according to a display list; transforming the gsprites to physical output device coordinates, including applying the affine transform to a gsprite representing a rendering of the at least one 3D object; compositing the gsprites to generate the current image at the frame refresh rate; and repeating the above steps to generate subsequent images for subsequent frame periods.
-
Specification