US 11,776,198 B1
System and method for rendering multiple polygons
Steve Blackmon, San Francisco, CA (US); and Simon Eves, San Francisco, CA (US)
Assigned to Heavy.Al, Inc., San Francisco, CA (US)
Filed by OmniSci, Inc., San Francisco, CA (US)
Filed on Apr. 10, 2020, as Appl. No. 16/846,269.
Claims priority of provisional application 62/832,144, filed on Apr. 10, 2019.
Int. Cl. G06T 15/10 (2011.01)
CPC G06T 15/10 (2013.01) 3 Claims
OG exemplary drawing
 
1. A method of displaying a plurality of polygons, comprising:
receiving locations of each of a plurality of vertices and at least one visual characteristic of each of the plurality of polygons;
identifying a triangle for each unique combination of three vertices of each polygon;
for each of the triangles, by a computer processor coupled to a graphics processor or by the graphics processor, adding a tuple comprising an identifier of the polygon corresponding to said triangle and an identifier of a pixel location to a first portion of a digital memory for each of a plurality of pixels corresponding to an interior of the triangle, resulting in a plurality of tuples comprising an identifier of a same pixel location and an identifier of a same polygon being simultaneously stored in the first portion of the digital memory for each of a plurality of pixels;
retrieving by the computer processor or graphics processor, the identifier of the polygon and the identifier of the pixel location for each of the pixels, from the first portion of the digital memory and, for each of the pixels, setting or clearing at least one bit in a set of a plurality of bits in a second portion of the digital memory, each set in the second portion of the digital memory corresponding to a single pixel and each single pixel for a polygon corresponding to no more than one set of the plurality of bits in the second portion of the digital memory, the set in which the at least one bit is set or cleared corresponding to the pixel location retrieved;
generating by the computer processor or graphics processor rendering data from the sets of the plurality of bits in the second portion of the digital memory and the at least one visual characteristic of at least some of the polygons in the plurality of polygons; and
directing the graphics processor to display the rendering data, thereby displaying causing the plurality of polygons to be displayed on a display screen coupled to the graphics processor.