Unique primitive identifier generation
AssigneeNVIDIA Corporation
InventorsAndrei S. Tatarinov, Yury Uralsky, Kirill A. Dmitriev
Life of this patent
Estimating the term…
Abstract
A system, method, and computer program product are provided for generating unique primitive identifiers. A specified scope and geometry for a scene is received. A primitive identifier is generated for each primitive of a particular type, where each of the primitive identifiers is unique within the specified scope, and where the primitives are generated as the geometry for the 3D graphics scene is processed by a graphics processing unit. Different types may include patches, triangles, and vertices. The specified scope may be one of a frame, region, pixel, or draw call.
Claims19
A method of generating identifiers, comprising:
- receiving a specified scope;
- receiving geometry for a three-dimensional (3D) graphics scene;
- and
- during a first processing pass of the geometry for the 3D graphics scene by a graphics processing unit:
- generating a primitive identifier for each primitive of a particular type, wherein each of the primitive identifiers within the specified scope does not equal another primitive identifier among all primitives of the particular type that are also within the specified scope;
- and
- generating a multi-sample geometry buffer comprising at least two samples per pixel that stores one of the primitive identifiers for each sample covered by at least one of the primitives.
A system comprising:
- a memory storing geometry for a three-dimensional (3D) graphics scene and a multi-sample geometry buffer comprising at least two samples per pixel;
- and
- a graphics processing unit that is coupled to the memory and configured to:
- receive a specified scope;
- receive the geometry for the 3D graphics scene;
- and
- during a first processing pass of the geometry for the 3D graphics scene:
- generate a primitive identifier for each primitive of a particular type, wherein each of the primitive identifiers within the specified scope does not equal another primitive identifier among all primitives of the particular type that are also within the specified scope;
- and
- store one of the primitive identifiers in the multi-sample geometry buffer for each sample that is covered by at least one of the primitives.
A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to generate identifiers comprising:
- receiving a specified scope;
- receiving geometry for a three-dimensional (3D) graphics scene;
- and
- during a first processing pass of the geometry for the 3D graphics scene by a graphics processing unit:
- generating a primitive identifier for each primitive of a particular type, wherein each of the primitive identifiers within the specified scope does not equal another primitive identifier among all primitives of the particular type that are also within the specified scope;
- and
- generating a multi-sample geometry buffer comprising at least two samples per pixel that stores one of the primitive identifiers for each sample covered by at least one of the primitives.
Dependencies are inferred from the claim text.