Adaptive sub-patches system, apparatus and method

US11004265B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11004265-B2
Application numberUS-201916268967-A
CountryUS
Kind codeB2
Filing dateFeb 6, 2019
Priority dateApr 24, 2017
Publication dateMay 11, 2021
Grant dateMay 11, 2021

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.

Systems, apparatuses and methods may provide a way to subdivide a patch generated in graphics processing pipeline into sub-patches, and generate sub-patch tessellations for the sub-patches. More particularly, systems, apparatuses and methods may provide a way to diverge tessellation sizes to a configurable size within an interior region of a patch or sub-patches based on a position of each of the tessellations. The systems, apparatuses and methods may determine a number of tessellation factors to use based on one or more of a level of granularity of one or more domains of a scene to be digitally rendered, available computing capacity, or power consumption to compute the number of tessellation factors.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus comprising: a hull shader to receive geometry data from a graphics pipeline and determine whether the geometry data includes at least one patch; a hull shader kernel to specify how to decompose the at least one patch into a number of sub-patches based on performance and/or scene perspectives, wherein the hull shader kernel to generate adaptive sub-patches for subdivision surfaces associated with the at least one patch, wherein each adaptive sub-patch includes separate sub-patch tessellation factors, the sub-patch tessellation factors defined based on scene elements comprising perspective view angle or degrees from a fixed or relative position, priority of one or more regions of a scene, and objects of interest as identified by configurable object identifiers; and a hardware fixed-function tessellator to generate sub-patch tessellations for the adaptive sub-patches based on the sub-patch tessellation factors and sub-patch specifications based on the sub-patch tessellations. 2. The apparatus of claim 1 , wherein the hull shader kernel to allow an application to subdivide triangle domains and/or quad domains into sub-patches with individual tessellation factors, wherein the hull shader kernel to output a variable list of sub-patch specifications for a given input patch and the hardware fixed-function tessellator unit to tessellate the variable list of sub-patch specifications into triangles responsive to limiting and/or eliminating under tessellation and/or over tessellation. 3. The apparatus of claim 1 , further comprising a domain shader to translate, using a displacement map, the sub-patch specifications into a digitally rendered scene. 4. The apparatus of claim 1 , wherein the hull shader kernel to adaptively determine granularity of the sub-patch tessellations based on a perspective projection of the at least one patch or the sub-patches. 5. The apparatus of claim 1 , wherein the hull shader kernel to generate values for sub-patch parameters that identify sub-patch attributes in each dimension of an N dimensional sub-patch based on the sub-patch tessellations, wherein one or more of the sub-patch parameters include one or more values identifying a starting sub-patch boundary and an ending sub-patch boundary. 6. The apparatus of claim 1 , wherein the at least one patch and the sub-patches include outside edges and inside edges and wherein the sub-patch tessellation factors specify a number of segments into which to divide one or more of the outside edges or inside edges. 7. The apparatus of claim 6 , wherein outside edge tessellation factors of adjacent sub-patches use tessellation factors equal to each other to eliminate gaps between sub-adjacent patches. 8. The apparatus of claim 6 , wherein the hull shader kernel to determine a transition region to connect adjacent outside edges or inside edges with a non-regular strip of triangles. 9. The apparatus of claim 1 , wherein when one of the at least one patch or the sub-patches exhibit perspective distortion based on perspective projection, the hull shader kernel to diverge tessellation sizes to a configurable size within an interior region of the at least one patch or the sub-patches based on a position of each of the tessellations. 10. The apparatus of claim 1 , wherein the at least one patch and the sub-patches include one or more of a triangle patch type and/or a quad patch type, wherein the at least one patch and the sub-patches identify one or more domains, wherein the one or more domains are subdivided into triangle domains or quad domains. 11. At least one non-transitory computer readable medium, comprising a set of instructions, which when executed by a computing device, cause the computing device to: receive geometry data from a graphics pipeline and determine whether the geometry data includes at least one patch; specify how to decompose the at least one patch into a number of sub-patches based on performance and/or scene perspectives; generate adaptive sub-patches for subdivision surfaces associated with the at least one patch, wherein each adaptive sub-patch includes separate sub-patch tessellation factors, the sub-patch tessellation factors defined based on scene elements comprising perspective view angle or degrees from a fixed or relative position, priority of one or more regions of a scene, and objects of interest as identified by configurable object identifiers; and generate sub-patch tessellations for the adaptive sub-patches based on the sub-patch tessellation factors and sub-patch specifications based on the sub-patch tessellations. 12. The at least one non-transitory computer readable medium of claim 11 , further comprising instructions, which when executed by the computing device, cause the computing device to allow an application to subdivide triangle domains and/or quad domains into sub-patches with individual tessellation factors, wherein the hull shader kernel to output a variable list of sub-patch specifications for a given input patch and the hardware fixed-function tessellator unit to tessellate the variable list of sub-patch specifications into triangles responsive to limiting and/or eliminating under tessellation and/or over tessellation. 13. The at least one non-transitory computer readable medium of claim 11 , further comprising instructions, which when executed by the computing device, cause the computing device to translate, using a displacement map, the sub-patch specifications into a digitally rendered scene. 14. The at least one non-transitory computer readable medium of claim 11 , further comprising instructions, which when executed by the computing device, cause the computing device to adaptively determine granularity of the sub-patch tessellations based on a perspective projection of the at least one patch or the sub-patches. 15. The at least one non-transitory computer readable medium of claim 11 , further comprising instructions, which when executed by the computing device, cause the computing device to generate values for sub-patch parameters that identify sub-patch attributes in each dimension of an N dimensional sub-patch based on the sub-patch tessellations, wherein one or more of the sub-patch parameters include one or more values identifying a starting sub-patch boundary and an ending sub-patch boundary. 16. The at least one non-transitory computer readable medium of claim 11 , wherein the at least one patch and the sub-patches include outside edges and inside edges and wherein the sub-patch tessellation factors specify a number of segments into which to divide one or more of the outside edges or inside edges. 17. The at least one non-transitory computer readable medium of claim 16 , wherein outside edge tessellation factors of adjacent sub-patches use tessellation factors equal to each other to eliminate gaps between sub-adjacent patches. 18. The at least one non-transitory computer readable medium of claim 16 , further comprising instructions, which when executed by the computing device, cause the computing device to determine a transition region to connect adjacent outside edges or inside edges with a non-regular strip of triangles. 19. The at least one non-transitory computer readable medium of claim 11 , wherein when one of the at least one patch or the sub-patches exhibit perspective distortion based on perspective projection, the instructions further cause the computing device to diverge tessellation sizes to a configurable size within an interior region of the at least one patch or the sub-patches based on a

Assignees

Inventors

Classifications

  • G06T15/005Primary

    General purpose rendering architectures · CPC title

  • Re-meshing · CPC title

  • Texture mapping · CPC title

  • G06T1/20Primary

    Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • G06T17/20Primary

    Finite element generation, e.g. wire-frame surface description, {tesselation} · 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 US11004265B2 cover?
Systems, apparatuses and methods may provide a way to subdivide a patch generated in graphics processing pipeline into sub-patches, and generate sub-patch tessellations for the sub-patches. More particularly, systems, apparatuses and methods may provide a way to diverge tessellation sizes to a configurable size within an interior region of a patch or sub-patches based on a position of each of t…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06T15/005. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 11 2021 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).