Tessellation method using displacement factors

US12374048B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12374048-B2
Application numberUS-202418439333-A
CountryUS
Kind codeB2
Filing dateFeb 12, 2024
Priority dateJun 5, 2015
Publication dateJul 29, 2025
Grant dateJul 29, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A tessellation method uses both vertex tessellation factors and displacement 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 calculating a vertex tessellation factor for each corner vertex in one or more input patches. Tessellation is then performed on the plurality of input patches using the vertex tessellation factors. The tessellation operation involves adding one or more new vertices and calculating a displacement factor for each newly added vertex. A world space parameter for each vertex is subsequently determined by calculating a target world space parameter for each vertex and then modifying the target world space parameter for a vertex using the displacement factor for that vertex.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of performing tessellation in a computer graphics system, the method comprising: performing tessellation to generate a plurality of primitives defined by vertices; and generating a world space parameter for each vertex by modifying a target world space parameter for a child vertex using a displacement factor for the child vertex and world space parameters for parent vertices of the child vertex, wherein the world space parameter is used for rendering objects in a scene. 2. The method according to claim 1 , wherein the tessellation comprises adding one or more new child vertices and calculating the displacement factor for each newly added child vertex, and wherein the newly added child vertex is added at a position on an edge connecting two existing vertices, the two existing vertices being the parent vertices for the child vertex, and wherein the displacement factor for the newly added vertex is calculated based on vertex tessellation factors of the parent vertices and/or the child vertex. 3. The method according to claim 2 , wherein the displacement factor is calculated based on the vertex tessellation factors of the two parent vertices and not based on the vertex tessellation factors for the child vertex. 4. The method according to claim 2 , wherein the newly added child vertex bisects the edge between the two parent vertices. 5. The method according to claim 4 , wherein calculating a displacement factor for each newly added vertex comprises: calculating the displacement factor for a vertex as a function of the vertex tessellation factors of the parent vertices of the vertex and/or the child vertex; wherein each displacement factor calculated is in a range between a minimum value of displacement factor and a maximum value of displacement factor. 6. The method according to claim 5 , further comprising: setting a displacement factor for each corner vertex to the maximum value of displacement factor. 7. The method according to claim 5 , wherein the modified target world space parameter is used in rendering an input patch in a display space and wherein as a level of detail of the rendering changes, the displacement factor for a vertex changes. 8. The method according to claim 7 , wherein as the level of detail increases, the displacement factor for a vertex increases until it is equal to the maximum value of displacement factor. 9. The method according to claim 7 , wherein as the level of detail decreases, the displacement factor for a vertex decreases until it is equal to the minimum value of displacement factor. 10. The method according to claim 9 , wherein as the level of detail decreases, a vertex is removed if the displacement factor of the vertex is equal to the minimum value of displacement factor. 11. The method according to claim 1 , wherein the displacement factor takes a value in a range between a minimum value and a maximum value dependent upon a current level of detail. 12. The method according to claim 1 , wherein the modified target world space parameter is used for rendering an input patch. 13. A graphics processing unit comprising: a tessellator arranged to perform tessellation to generate and output a plurality of primitives defined by vertices; and a blend shader arranged, to generate a world space parameter for each vertex, by modifying a received target world space parameter for a child vertex using a displacement factor for the child vertex and world space parameters for parent vertices of the child vertex, wherein the world space parameter is used for rendering objects in a scene. 14. The graphics processing unit according to claim 13 , wherein the blend shader is arranged, for the child vertex, to modify a received target world space parameter for the child vertex using the displacement factor for the child vertex and the world space parameters for the parent vertices of the child vertex by: generating a starting state of the world space parameter for the child vertex by interpolating between the world space parameters for the parent vertices; and interpolating, using the displacement factor for the child vertex, between the starting state of the world space parameter for the child vertex and the target world space parameter for the child vertex. 15. The graphics processing unit according to claim 14 , further comprising a domain shader arranged to calculate target world space parameters for the child vertex and the parent vertices and to output the target world space parameters to the blend shader. 16. The graphics processing unit according to claim 13 , further comprising a vertex shader arranged to calculate a vertex tessellation factor for each corner vertex and to output the calculated vertex tessellation factor for each corner vertex to the tessellator. 17. The graphics processing unit according to claim 16 , further comprising an out vertex buffer and wherein outputting the vertex tessellation factors to the tessellator comprises storing the vertex tessellation factors in the out vertex buffer. 18. A non-transitory computer readable storage medium having stored thereon a computer readable dataset description of an integrated circuit that, when processed, causes an integrated circuit manufacturing system to generate a graphics pipeline configured to: perform tessellation to generate a plurality of primitives defined by vertices; and generate a world space parameter for each vertex by modifying a target world space parameter for a child vertex using a displacement factor for the child vertex and world space parameters for parent vertices of the child vertex, wherein the world space parameter is used for rendering objects in a scene. 19. The non-transitory computer readable storage medium according to claim 18 , wherein the graphics pipeline is further configured to modify the target world space parameter for a child vertex using the displacement factor for the child vertex and the world space parameters for the parent vertices of the child vertex by: generating a starting state of the world space parameter for the child vertex by interpolating between the world space parameters for the parent vertices; and calculating a modified world space parameter for the child vertex based on the displacement factor for the child vertex, the starting state of the world space parameter for the child vertex and the target world space parameter for the child vertex.

Assignees

Inventors

Classifications

  • G06T11/10Primary

    Texturing; Colouring; Generation of textures or colours (retouching, inpainting or scratch removal G06T5/77) · CPC title

  • Shading · CPC title

  • General purpose rendering architectures · CPC title

  • G06T17/205Primary

    Re-meshing · CPC title

  • Level of detail · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12374048B2 cover?
A tessellation method uses both vertex tessellation factors and displacement 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 calculating a vertex tessellation factor for each corner vertex in one or more input patches. Tessellation is then performed on the plurality of input patches u…
Who is the assignee on this patent?
Imagination Tech Ltd
What technology area does this patent fall under?
Primary CPC classification G06T11/10. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 29 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).