Methods and systems for processing a geometry shader program developed in a high-level shading language
    1.
    发明授权
    Methods and systems for processing a geometry shader program developed in a high-level shading language 有权
    用于处理以高级着色语言开发的几何着色器程序的方法和系统

    公开(公告)号:US07958498B1

    公开(公告)日:2011-06-07

    申请号:US11565585

    申请日:2006-11-30

    IPC分类号: G06F9/45

    摘要: Methods and systems for processing a geometry shader program developed in a high-level shading language are disclosed. Specifically, in one embodiment, after having received the geometry shader program configured to be executed by a first processing unit in a programmable execution environment, the high-level shading language instructions of the geometry shader program is converted into low-level programming language instructions. The low-level programming language instructions are then linked with the low-level programming language instructions of a domain-specific shader program, which is configured to be executed by a second processing unit also residing in the programmable execution environment. The linked instructions of the geometry shader program are directed to the first processing unit, and the linked instructions of the domain-specific shader program are directed to the second processing unit.

    摘要翻译: 公开了用于处理以高级着色语言开发的几何着色器程序的方法和系统。 具体地说,在一个实施例中,在可编程执行环境中接收到被配置为由第一处理单元执行的几何着色器程序之后,将几何着色器程序的高级着色语言指令转换成低级编程语言指令。 然后,低级编程语言指令与特定于领域的着色器程序的低级编程语言指令相关联,该指令被配置为由驻留在可编程执行环境中的第二处理单元执行。 几何着色器程序的链接指令被引导到第一处理单元,并且域专用着色器程序的链接指令被引导到第二处理单元。

    Tessellation shader inter-thread coordination
    2.
    发明授权
    Tessellation shader inter-thread coordination 有权
    镶嵌着色器线程间协调

    公开(公告)号:US09024946B2

    公开(公告)日:2015-05-05

    申请号:US12879976

    申请日:2010-09-10

    IPC分类号: G06T15/30 G06T15/00

    摘要: One embodiment of the present invention sets forth a technique for performing a computer-implemented method for tessellating patches. An input block is received that defines a plurality of input patch attributes for each patch as well as instructions for processing each input patch. A plurality of threads is launched to execute the instructions to generate each vertex of a corresponding output patch based on the input patch. Reads of values written during instruction execution are synchronized so threads can read and further process the values of other threads. An output patch is then assembled from the outputs of each of the threads; and emitting the output patch for further processing.

    摘要翻译: 本发明的一个实施例提出了一种用于执行用于镶嵌补丁的计算机实现的方法的技术。 接收一个输入块,其定义每个补丁的多个输入补丁属性以及用于处理每个输入补丁的指令。 启动多个线程以执行指令以基于输入补丁生成相应输出补丁的每个顶点。 在指令执行期间写入的值的读取是同步的,因此线程可以读取并进一步处理其他线程的值。 然后从每个线程的输出组装输出补丁; 并发射输出补丁进行进一步处理。

    Methods and systems for processing a geometry shader program developed in a high-level shading language
    3.
    发明授权
    Methods and systems for processing a geometry shader program developed in a high-level shading language 有权
    用于处理以高级着色语言开发的几何着色器程序的方法和系统

    公开(公告)号:US07746347B1

    公开(公告)日:2010-06-29

    申请号:US11565566

    申请日:2006-11-30

    CPC分类号: G06F8/41 G06T15/005

    摘要: Methods and systems for processing a geometry shader program developed in a high-level shading language are disclosed. Specifically, in one embodiment, after having received the geometry shader program configured to be executed by a first processing unit in a programmable execution environment, the high-level shading language instructions of the geometry shader program is converted into low-level programming language instructions. The low-level programming language instructions are then linked with the low-level programming language instructions of a domain-specific shader program, which is configured to be executed by a second processing unit also residing in the programmable execution environment. The linked instructions of the geometry shader program are directed to the first processing unit, and the linked instructions of the domain-specific shader program are directed to the second processing unit.

    摘要翻译: 公开了用于处理以高级着色语言开发的几何着色器程序的方法和系统。 具体地说,在一个实施例中,在可编程执行环境中接收到配置为由第一处理单元执行的几何着色器程序之后,将几何着色器程序的高级着色语言指令转换成低级编程语言指令。 然后,低级编程语言指令与特定于领域的着色器程序的低级编程语言指令相关联,该指令被配置为由驻留在可编程执行环境中的第二处理单元执行。 几何着色器程序的链接指令被引导到第一处理单元,并且域专用着色器程序的链接指令被引导到第二处理单元。

    System and method for path rendering with multiple stencil samples per color sample
    4.
    发明授权
    System and method for path rendering with multiple stencil samples per color sample 有权
    用于每个颜色样本的多个模版样本的路径渲染的系统和方法

    公开(公告)号:US08704830B2

    公开(公告)日:2014-04-22

    申请号:US13111897

    申请日:2011-05-19

    IPC分类号: G06T15/40

    CPC分类号: G06T15/005 G06T11/203

    摘要: One embodiment of the present invention sets forth a technique for improving path rendering on computer systems by efficiently representing and computing sub-pixel coverage for path objects. A stencil buffer is configured to store multiple stencil samples per pixel stored in an image buffer. The stencil samples undergo stencil testing to produce a set of Boolean values per pixel, which collectively define a geometric coverage percentage for the pixel. The coverage percentage is used to modulate a color value for the pixel. The modulated color value is then blended into the image buffer as an anti-aliased pixel. This technique advantageously enables efficient anti-aliasing for path rendering.

    摘要翻译: 本发明的一个实施例提出了一种用于通过有效地表示和计算路径对象的子像素覆盖来改善计算机系统上的路径渲染的技术。 模板缓冲器被配置为存储存储在图像缓冲器中的每个像素的多个模板样本。 模板样品经历模板测试以产生每个像素的一组布尔值,其共同地定义像素的几何覆盖百分比。 覆盖百分比用于调整像素的颜色值。 然后将调制的颜色值作为抗锯齿像素混合到图像缓冲器中。 该技术有利地实现了用于路径渲染的有效抗锯齿。

    Graphics API with branching capabilities
    5.
    发明授权
    Graphics API with branching capabilities 有权
    具有分支功能的图形API

    公开(公告)号:US07006101B1

    公开(公告)日:2006-02-28

    申请号:US10180798

    申请日:2002-06-25

    IPC分类号: G09G5/37

    摘要: A system, method and computer program product are provided for branching during programmable processing utilizing a graphics application program interface in conjunction with a hardware graphics pipeline. Initially, a first instruction defined by the graphics application program interface is identified. A first operation is performed on graphics data based on the first instruction utilizing the hardware graphics pipeline. Any some point, the present technique may involve branching to an additional instruction defined by the graphics application program interface other than a subsequent sequential instruction. Next, another operation is performed on the graphics data based on the additional instruction utilizing the hardware graphics pipeline.

    摘要翻译: 提供了一种系统,方法和计算机程序产品,用于在可编程处理期间利用结合硬件图形管线的图形应用程序接口进行分支。 首先,识别由图形应用程序接口定义的第一指令。 基于使用硬件图形管线的第一指令对图形数据执行第一操作。 任何一点,本技术可能涉及分支到由图形应用程序接口定义的附加指令,而不是随后的顺序指令。 接下来,基于利用硬件图形管线的附加指令对图形数据执行另一操作。

    System, method and computer program product for programmable fragment processing in a graphics pipeline
    6.
    发明授权
    System, method and computer program product for programmable fragment processing in a graphics pipeline 有权
    用于图形管线中可编程片段处理的系统,方法和计算机程序产品

    公开(公告)号:US06982718B2

    公开(公告)日:2006-01-03

    申请号:US10000996

    申请日:2001-11-30

    IPC分类号: G06T1/20

    CPC分类号: G06T15/50 G06T15/04

    摘要: A system, method and computer program product are provided for programmable processing of fragment data in a computer hardware graphics pipeline. Initially, fragment data is received in a hardware graphics pipeline. It is then determined whether the hardware graphics pipeline is operating in a programmable mode. If it is determined that the hardware graphics pipeline is operating in the programmable mode, programmable operations are performed on the fragment data in order to generate output. The programmable operations are performed in a manner/sequence specified in a graphics application program interface. If it is determined that the hardware graphics pipeline is not operating in the programmable mode, standard graphics application program interface (API) operations are performed on the fragment data in order to generate output.

    摘要翻译: 提供了一种系统,方法和计算机程序产品,用于在计算机硬件图形管线中对片段数据进行可编程处理。 最初,在硬件图形流水线中接收片段数据。 然后确定硬件图形管线是否以可编程模式操作。 如果确定硬件图形流水线在可编程模式下操作,则对片段数据执行可编程操作以产生输出。 可编程操作以图形应用程序接口中指定的方式/顺序执行。 如果确定硬件图形流水线未在可编程模式下运行,则对片段数据执行标准图形应用程序接口(API)操作,以便产生输出。

    Floating point buffer system and method for use during programmable fragment processing in a graphics pipeline
    7.
    发明授权
    Floating point buffer system and method for use during programmable fragment processing in a graphics pipeline 有权
    浮点缓冲系统及在图形管线可编程片段处理中使用的方法

    公开(公告)号:US07009615B1

    公开(公告)日:2006-03-07

    申请号:US10006477

    申请日:2001-11-30

    IPC分类号: G06T1/20

    CPC分类号: G06T1/60

    摘要: A system, method and computer program product are provided for buffering data in a computer graphics pipeline. Initially, graphics floating point data is read from a buffer in a graphics pipeline. Next, the graphics floating point data is operated upon in the graphics pipeline. Further, the graphics floating point data is stored to the buffer in the graphics pipeline.

    摘要翻译: 提供了一种用于在计算机图形管线中缓冲数据的系统,方法和计算机程序产品。 最初,图形流水线中的缓冲区读取图形浮点数据。 接下来,在图形管线中操作图形浮点数据。 此外,图形浮点数据被存储在图形流水线中的缓冲器中。

    Texture arrays in a graphics library
    8.
    发明授权
    Texture arrays in a graphics library 有权
    图形库中的纹理数组

    公开(公告)号:US07777750B1

    公开(公告)日:2010-08-17

    申请号:US11608767

    申请日:2006-12-08

    IPC分类号: G06T1/00

    CPC分类号: G06T15/04 G06T2200/28

    摘要: One embodiment of the invention sets forth a method for storing graphics data in a texture array in a local memory coupled to a graphics processing unit. The method includes the steps of specifying the texture array as a target in the local memory, and loading a first block of texture maps into the texture array, wherein each texture map in the first block has a first resolution and corresponds to a different slice of the texture array. One advantage of the disclosed method is that a complete block of texture images may be loaded into a texture array using a single API call. Thus, compared to prior art systems, where a texture array must be loaded one image for one slice of the array at a time, the disclosed method increases the efficiency of using arrays of texture maps for graphics processing operations.

    摘要翻译: 本发明的一个实施例提出了一种用于将图形数据存储在耦合到图形处理单元的本地存储器中的纹理阵列中的方法。 该方法包括以下步骤:将纹理数组指定为本地存储器中的目标,并将纹理贴图的第一块加载到纹理数组中,其中第一块中的每个纹理图具有第一分辨率,并对应于 纹理数组。 所公开方法的一个优点是可以使用单个API调用将完整的纹理图像块加载到纹理阵列中。 因此,与现有技术的系统相比,其中纹理阵列必须一次加载阵列的一个片的一个图像,所公开的方法提高了使用图形处理操作的纹理贴图阵列的效率。

    System and method for converting a vertex program to a binary format capable of being executed by a hardware graphics pipeline
    9.
    发明授权
    System and method for converting a vertex program to a binary format capable of being executed by a hardware graphics pipeline 有权
    用于将顶点程序转换为能够由硬件图形管线执行的二进制格式的系统和方法

    公开(公告)号:US07719545B1

    公开(公告)日:2010-05-18

    申请号:US11942596

    申请日:2007-11-19

    IPC分类号: G06T15/10 G09G5/00

    CPC分类号: G06T15/005

    摘要: A system, method and computer program product are provided for programmable vertex processing. Initially, a vertex program is identified including branch labels and instruction sequences with branch commands. The vertex program is then converted to a binary format capable of being executed by a hardware graphics pipeline. The vertex program may then be executed in the binary format utilizing the hardware graphics pipeline for transforming vertices. As an option, the vertex program is initially written in a textual format capable of being read by a human prior to being converted.

    摘要翻译: 提供了可编程顶点处理的系统,方法和计算机程序产品。 最初,顶点程序被识别,包括分支标签和具有分支命令的指令序列。 然后,顶点程序被转换成能够由硬件图形管线执行的二进制格式。 然后可以利用用于变换顶点的硬件图形管线以二进制格式执行顶点程序。 作为选择,顶点程序最初被写入能够被转换之前被人读取的文本格式。

    System and method for converting a vertex program to a binary format capable of being executed by a hardware graphics pipeline
    10.
    发明授权
    System and method for converting a vertex program to a binary format capable of being executed by a hardware graphics pipeline 有权
    用于将顶点程序转换为能够由硬件图形管线执行的二进制格式的系统和方法

    公开(公告)号:US07456838B1

    公开(公告)日:2008-11-25

    申请号:US11062060

    申请日:2005-02-18

    IPC分类号: G06T1/00 G09G5/36 G09G5/37

    CPC分类号: G06T15/005

    摘要: A system, method and computer program product are provided for programmable vertex processing. Initially, a vertex program is identified including branch labels and instruction sequences with branch commands. The vertex program is then converted to a binary format capable of being executed by a hardware graphics pipeline. The vertex program may then be executed in the binary format utilizing the hardware graphics pipeline for transforming vertices. As an option, the vertex program is initially written in a textual format capable of being read by a human prior to being converted.

    摘要翻译: 提供了可编程顶点处理的系统,方法和计算机程序产品。 最初,顶点程序被识别,包括分支标签和具有分支命令的指令序列。 然后,顶点程序被转换成能够由硬件图形管线执行的二进制格式。 然后可以利用用于变换顶点的硬件图形管线以二进制格式执行顶点程序。 作为选择,顶点程序最初被写入能够被转换之前被人读取的文本格式。