Recursive Triangle Tessellation for Visual Artifact Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing tessellation methods in computer graphics often result in undesirable visual artefacts such as snapping, cracking, and swimming due to abrupt changes in triangle sizes and shapes, leading to inefficient rendering and potential rendering overheads.

Innovation Solution

A tessellation method that uses vertex tessellation factors defined for each corner of a patch, comparing them to a threshold to determine if new vertices need to be added, thereby subdividing edges and recursively applying the process until no vertex tessellation factors exceed the threshold, ensuring smooth transitions and consistent triangle sizes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the number of generated primitives is increased to improve approximation accuracy, then the level of detail is improved, but the processing effort required to render the scene increases

Engineering Contradiction:
Improveapproximation accuracyVSAvoidprocessing effort
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patch is divided into multiple sub-patches through systematic edge subdivision. Each edge is divided into a specified number of segments, creating a structured grid of smaller triangles that approximate the surface. This segmentation approach allows control over approximation accuracy by adjusting the number of segments while maintaining rendering efficiency through regular pattern generation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different edges of the patch can have different numbers of segments assigned to them, allowing local control over the density and quality of tessellation. This enables higher detail in regions requiring greater accuracy while maintaining coarser tessellation in less critical areas, optimizing the balance between approximation quality and processing effort.

Inventive Principle:
Principle #3Local quality

2Measurement precision

If tessellation is performed on curved patches, then the accuracy of surface representation is improved, but the complexity of the tessellation process increases

Engineering Contradiction:
Improvesurface representation accuracyVSAvoidtessellation process complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The tessellation process operates in the parametric domain (u,v space) rather than directly on the curved surface in 3D space. By performing subdivision in the 2D parameter domain and then mapping to the curved surface, the complexity of handling curved geometry is avoided while still achieving accurate surface representation through the parametric mapping.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Stability of the object's composition

If the level of detail is changed smoothly, then the visual continuity is improved, but the tessellation changes in a discontinuous fashion causing visual artefacts

Engineering Contradiction:
Improvevisual continuityVSAvoidvisual artefacts
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The tessellation method dynamically adjusts the number of segments on each edge based on the requested level of detail and the specific edge being tessellated. This dynamic segmentation allows the tessellation to adapt smoothly to changing view conditions and detail requirements, preventing the discontinuous jumps that cause visual artifacts while maintaining visual continuity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240135648A1Tessellation method using recursive sub-division of triangles
Publication Date: 2024.04.25 IMAGINATION TECH LTD
  • US20240135648A1 patent drawing
  • US20240135648A1 patent drawing
  • US20240135648A1 patent drawing

AI summary

A tessellation method uses tessellation factors defined for each vertex of a patch which may be a quad, a triangle or an isoline. The method is implemented in a computer graphics system and involves comparing the vertex tessellation factors to a threshold. If the vertex tessellation factors for either a left vertex or a right vertex, which define an edge of an initial patch, exceed the threshold, the edge is sub-divided by the addition of a new vertex which divides the edge into two parts and two new patches are formed. New vertex tessellation factors are calculated for each vertex in each of the newly formed patches, both of which include the newly added vertex. The method is then repeated for each of the newly formed patches until none of the vertex tessellation factors exceed the threshold.