Hierarchical tile-based rasterization algorithm
AssigneeVivante Corporation
InventorsMike Cai, Frido Garristen, Ming Chen
Life of this patent
Estimating the term…
Abstract
A hierarchical tile-based rasterization method is disclosed. The inventive rasterization algorithm rasterizes pixels in hierarchical rectangles or blocks. The method includes: walking a plurality of tiles of pixels and determining if each tile is valid; breaking each valid tile into a plurality of subtiles and determining if each subtile is valid; breaking each valid subtile into a plurality of quads and determining if each quad is valid; and rendering pixels for each valid quad. These hierarchical levels of block validations are performed in parallel. The inventive rasterization algorithm is further implemented in hardware for better performance.
Claims18
A hierarchical memory localized triangle rasterization method, comprising the steps of:
- (a) walking a plurality of tiles of pixels and determining if each tile is valid;
- (b) breaking each valid tile into a plurality of subtiles and determining if each subtile is valid;
- (c) breaking each valid subtile into a plurality of quads and determining if each quad is valid;
- and
- (d) rendering pixels for each valid quad, wherein steps (a) through (d) are performed in parallel;
- and wherein the walking step (a) comprises determining a walk direction from each tile according to whether the tile is determined to be valid.
A hierarchical memory localized rasterization method, comprising the steps of:
- (a) inputting an initial point for a primitive;
- (b) determining if the primitive is a line or a triangle;
- and
- (c) if the polygon is a triangle, rasterizing the triangle in a hierarchical manner, comprising:
- (c1) walking a plurality of tiles of pixels and determining if each tile is valid;
- (c2) breaking each valid tile into a plurality of subtiles and determining if each subtile is valid;
- (c3) breaking each valid subtile into a plurality of quads and determining if each quad is valid;
- and
- (c4) rendering pixels for each valid quad, wherein steps (c1) through (c4) are performed in parallel;
- wherein determining if a block is valid, wherein the block comprises a tile, a subtile, or a quad, comprises:
- checking four corners of the block against edges of the triangle and returning a combined result;
- determining if the block contains any pixels inside the triangle, based on the combined result;
- and
- determining that the block is valid, if the block contains at least one pixel inside the triangle;
- and wherein the walking step (c1) comprises determining a walk direction from each tile according to whether the tile is determined to be valid.
A method for validation of a block of pixels in a hierarchical memory localized triangle rasterization method, comprising the steps of:
- (a) checking if a pixel in the block is found in an area of the screen where pixels belonging to the inside of the triangle are present using edge equations;
- (b) checking four corners of the block against three edges of the triangle and returning a combined result;
- (c) determining if the block contains any pixels inside the triangle, based on the combined result;
- and
- (d) determining that the block is valid, if the block contains at least one valid pixel inside the triangle;
- wherein a walk direction from each tile is determined according to whether the tile is determined to be valid.
Dependencies are inferred from the claim text.