System and method for multi-sampling primitives to reduce aliasing
AssigneeRound Rock Research, LLC
InventorKevin Hunter
Life of this patent
Estimating the term…
Abstract
A method and system for performing multi-sample, antialiased rendering of images by performing multi-sample antialiasing at the primitive level. Geometric primitives used to represent a graphics environment are set-up, and then shifted by a sub-pixel offset and rendered to generate values for pixels of an intermediate image. The shifting and rendering is repeated for the geometric primitive, each time generating values for pixels of another intermediate image. The values for the pixels of the intermediate images are combined to produce values for the respective pixels of the resulting image.
Claims24
A method for calculating pixel values, the method comprising:
- transforming geometric primitives from a first coordinate space to a second coordinate space;
- and
- for each transformed primitive:
- rendering the transformed primitive to generate at least one first sample value for a pixel;
- shifting the transformed primitive in the second coordinate space by a respective sub-pixel offset;
- and
- rendering the shifted transformed primitive to generate at least one second sample value for the pixel;
- and
- combining the first and second sample values to generate a pixel value for the pixel.
A graphics system for calculating pixel values, the system comprising:
- a set-up engine configured to receive geometric data and generate transformed geometric data therefrom, the transformed geometric data representing a plurality of geometric primitives in a new coordinate space;
- a rendering stage coupled to the set-up engine and configured to receive the transformed geometric data for at least one geometric primitive, the rendering stage configured to calculate a first sample value for a pixel at least partially covered by the geometric primitive, and further configured to shift the geometric primitive a respective sub-pixel offset from a first pixel position, and calculate a second sample value for the pixel, and further configured to combine the first and second sample values to generate a pixel value;
- and
- a buffer coupled to the rendering stage and configured to store the pixel value.
A method for determining values for pixels of an image, the method comprising:
- in a graphics processing system, shifting a position of a geometric primitive in a screen coordinate space from a first pixel position to positions corresponding to respective sampling locations of a sampling pattern, the sampling locations being a respective sub-pixel offset from the first pixel position;
- rendering in the graphics processing system the shifted geometric primitive positioned at each of the sampling locations to generate sample values for a respective set of pixels representing the shifted geometric primitive positioned at the each of the plurality of sampling locations;
- and
- calculating values for a resultant set of pixels representing the rendered geometric primitive positioned at the first pixel position with the sample values for the respective sets of pixels generated for the geometric primitive positioned at the plurality of sampling locations of the sampling pattern.
Dependencies are inferred from the claim text.