Primitive Dicing for Tessellation Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current tessellation techniques in computer graphics face limitations such as maximum primitive expansion restrictions, requiring special model representations and increased storage for divided primitives, which can lead to inefficient rendering and undesirable multiple model representations.

Innovation Solution

A method for dicing a primitive involves preprocessing to determine the number of splits and selecting a dicing pattern, followed by splitting the primitive into smaller ones with parameterization coordinates, allowing for efficient rendering with or without tessellation, while maintaining compatibility with existing rendering stages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tessellation is applied to convert primitives into structures suitable for rendering, then rendering capability is improved, but hardware restrictions such as maximum primitive expansion limitations prevent efficient use

Engineering Contradiction:
Improverendering capabilityVSAvoidhardware compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent segments the tessellation process into two distinct phases: a preprocessing phase that performs dicing and generates parameterization data, and a rendering phase that executes tessellation. This segmentation allows the system to prepare primitives in advance with all necessary subdivision information, enabling hardware with limited expansion capabilities to render complex tessellated geometry efficiently without exceeding maximum primitive expansion limits during the actual rendering process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary dicing operations and parameterization calculations during the preprocessing phase before rendering occurs. By pre-computing the subdivision patterns and storing parameterization data in buffers, the system eliminates the need for complex runtime calculations, allowing hardware with restricted tessellation capabilities to render high-detail models efficiently using the pre-prepared data structures.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If a primitive is divided into smaller primitives before applying tessellation, then tessellation can be applied efficiently, but additional attributes interpolation and storage are required which increases the overall size of the original model

Engineering Contradiction:
Improvetessellation efficiencyVSAvoidmodel size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent creates a virtual copy of the primitive structure through parameterization data rather than physically duplicating the geometric data. The dicing operation generates index buffers and parameterization coordinates that reference the original vertex data, allowing multiple tessellated instances to be rendered without proportionally increasing the stored model size. This copying approach maintains efficient tessellation while controlling memory consumption.

Inventive Principle:
Principle #26Copying

3Productivity

If different representations of the same model are used to accommodate tessellation requirements, then tessellation can be performed, but having multiple representations is undesirable in many cases

Engineering Contradiction:
Improvetessellation performanceVSAvoidmodel representation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal model representation that serves both conventional rendering and tessellated rendering through the same primitive structure. The dicing operation modifies the original primitive in place with embedded parameterization data that enables tessellation, while the same structure can be rendered conventionally when tessellation is not required. This multi-functional representation eliminates the need to maintain separate model formats for different rendering modes.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent transforms the primitive representation by adding parameterization coordinates and dicing patterns as additional parameters rather than creating a fundamentally different data structure. These parameter changes enable tessellation functionality while maintaining compatibility with existing rendering pipelines, allowing the same model representation to adapt to different rendering requirements through parameter interpretation rather than structural transformation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9437042B1System, method, and computer program product for performing dicing on a primitive
Publication Date: 2016.09.06 NVIDIA CORP
  • US9437042B1 patent drawing
  • US9437042B1 patent drawing
  • US9437042B1 patent drawing

AI summary

A system, method, and computer program product are provided for performing dicing on a primitive. In use, a primitive to be rendered is identified. Additionally, preprocessing is performed on the primitive. Further, dicing is performed on the primitive, based on the preprocessing.