Order-independent transparency rendering system and method
    1.
    发明授权
    Order-independent transparency rendering system and method 有权
    与订单无关的透明度渲染系统和方法

    公开(公告)号:US06989840B1

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

    申请号:US09944988

    申请日:2001-08-31

    IPC分类号: G09G5/02

    CPC分类号: G06T15/503 G06T15/04

    摘要: A system, method and computer program product are provided for transparency rendering in a graphics pipeline. Initially, colored-transparency information is collected from a plurality of depth layers (i.e. colored-transparency layers, etc.) in a scene to be rendered. The collected colored-transparency information is then stored in memory. The colored-transparency information from the depth layers may then be blended in a predetermined order.

    摘要翻译: 提供了一种系统,方法和计算机程序产品,用于在图形管线中进行透明度渲染。 首先,从要呈现的场景中的多个深层(即彩色透明层等)收集彩色透明度信息。 然后将收集的彩色透明度信息存储在存储器中。 然后可以以预定顺序混合来自深层的着色透明度信息。

    Dynamic texture fetch cancellation
    2.
    发明授权
    Dynamic texture fetch cancellation 有权
    动态纹理提取取消

    公开(公告)号:US07528843B1

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

    申请号:US11203550

    申请日:2005-08-12

    摘要: Systems and methods for dynamically canceling texture fetches may improve texture mapping performance. A shader program compiler inserts condition code writes and condition code comparison operations for shader program instructions that contribute to a texture read instruction and do not need to be executed if certain conditions are met. During execution of the shader program, the inserted condition codes are used to compute a dynamic writemask that indicates if the texture data resulting from the texture read is unnecessary. The dynamic writemask is used to cancel unnecessary texture fetches during execution of the shader program.

    摘要翻译: 用于动态取消纹理提取的系统和方法可以提高纹理映射性能。 着色器程序编译器为有助于纹理读取指令的着色器程序指令插入条件代码写入和条件代码比较操作,并且在满足某些条件时不需要执行。 在执行着色器程序期间,插入的条件代码用于计算动态写入掩码,指示纹理读取产生的纹理数据是否不必要。 动态写入掩码用于在着色器程序执行期间取消不必要的纹理提取。

    System and method for using and collecting information from a plurality of depth layers
    3.
    发明授权
    System and method for using and collecting information from a plurality of depth layers 有权
    用于使用和收集来自多个深层的信息的系统和方法

    公开(公告)号:US06744433B1

    公开(公告)日:2004-06-01

    申请号:US09945444

    申请日:2001-08-31

    IPC分类号: G06T1540

    CPC分类号: G06T15/40

    摘要: A system and method are provided for using information from at least one depth layer and for collecting information about at least one additional depth layer utilizing a graphics pipeline. Initially, constraining depth layers are provided which, in turn, define a plurality of depth constraints. Next, a plurality of tests is performed involving the constraining depth layers for collecting information about at least one additional depth layer. The information relating to the at least one depth layer may then be used to improve processing in the graphics pipeline. By the foregoing multiple tests, information relating to a plurality of depth layers may be collected during each of a plurality of rendering passes. Initially, information relating to the constraining depth layers and associated depth constraints is provided in the aforementioned manner. Thereafter, information relating to at least one additional depth layer is collected during additional rendering passes using multiple tests on each rendering pass. Once collected, such information relating to the constraining depth layers and the information relating to the at least one additional depth layer may be used to further improve processing in the graphics pipeline.

    摘要翻译: 提供了一种用于使用来自至少一个深度层的信息并且利用图形管线收集关于至少一个附加深度层的信息的系统和方法。 最初,提供约束深度层,其又限定多个深度约束。 接下来,执行涉及用于收集关于至少一个附加深度层的信息的约束深度层的多个测试。 然后可以使用与至少一个深度层有关的信息来改善图形流水线中的处理。 通过上述多个测试,可以在多个渲染遍历中的每一个期间收集与多个深度层有关的信息。 最初,以上述方式提供与约束深度层和相关联的深度约束有关的信息。 此后,在另外的渲染过程中,通过对每个渲染过程进行多次测试来收集与至少一个附加深度层相关的信息。 一旦收集,可以使用与限制深度层有关的这种信息和与至少一个附加深度层相关的信息来进一步改进图形流水线中的处理。

    System and method for dual-depth shadow-mapping
    4.
    发明授权
    System and method for dual-depth shadow-mapping 有权
    双重影像映射的系统和方法

    公开(公告)号:US06704025B1

    公开(公告)日:2004-03-09

    申请号:US09944990

    申请日:2001-08-31

    IPC分类号: G09G502

    CPC分类号: G06T15/60

    摘要: A system and method are provided for improved shadow mapping in a graphics pipeline. Raw depth values are initially collected from two depth layers in a scene to be rendered. Shadow-map depth values are then calculated utilizing the raw depth values. The scene is then shadow mapped utilizing the shadow-map depth values in order to improve the appearance of shadows in a rendered scene. The various steps are carried out by a hardware-implemented graphics pipeline, which may include texturing or shadowing mapping hardware.

    摘要翻译: 提供了一种用于在图形管线中改进阴影映射的系统和方法。 原始深度值最初从要呈现的场景中的两个深度层收集。 然后使用原始深度值计算阴影图深度值。 然后使用阴影映射深度值对场景进行阴影映射,以改善渲染场景中阴影的出现。 各种步骤由硬件实现的图形管线执行,其可以包括纹理或阴影映射硬件。

    Primitive program compilation for flat attributes with provoking vertex independence
    6.
    发明授权
    Primitive program compilation for flat attributes with provoking vertex independence 有权
    平面属性的原始程序编译,引起顶点独立性

    公开(公告)号:US08171461B1

    公开(公告)日:2012-05-01

    申请号:US11361769

    申请日:2006-02-24

    IPC分类号: G06F9/45 G06F15/16

    CPC分类号: G06F8/4441

    摘要: Systems and methods for compiling high-level primitive programs are used to generate primitive program micro-code for execution by a primitive processor. A compiler is configured to produce micro-code for a specific target primitive processor based on the target primitive processor's capabilities. The compiler supports features of the high-level primitive program by providing conversions for different applications programming interface conventions, determining output primitive types, initializing attribute arrays based on primitive input profile modifiers, and determining vertex set lengths from specified primitive input types.

    摘要翻译: 用于编译高级原始程序的系统和方法用于生成原始程序微代码,以由原始处理器执行。 编译器被配置为基于目标原语处理器的能力为特定目标原语处理器产生微代码。 编译器通过为不同的应用程序编程接口约定提供转换,确定输出原语类型,基于原始输入配置文件修饰符初始化属性数组以及从指定的基元输入类型确定顶点集长度来支持高级原始程序的功能。

    Vector data types with swizzling and write masking for C++
    7.
    发明授权
    Vector data types with swizzling and write masking for C++ 有权
    用于C ++的矢量数据类型,具有旋转和写入掩码

    公开(公告)号:US08010944B1

    公开(公告)日:2011-08-30

    申请号:US11608764

    申请日:2006-12-08

    IPC分类号: G06F9/44

    摘要: One embodiment of the invention includes a method for extending an object-oriented programming language to include support for a shading language vector data type. The method generally includes defining a template class for a shading language vector, defining a template class for a swizzled vector, and partially specializing the vector template class for vectors of one, two, three, and four elements. The partial specialization includes a union of instances of the vector swizzle template, where each instance represents a desired vector swizzle. In addition to defining the vector and vector swizzle data types, the templates classes may overload operators provided by the object-oriented programming language to perform operations corresponding to operations of the operators in the shading language.

    摘要翻译: 本发明的一个实施例包括一种用于扩展面向对象编程语言以包括对着色语言向量数据类型的支持的方法。 该方法通常包括定义用于着色语言向量的模板类,为转动向量定义模板类,以及部分专门针对一个,两个,三个和四个元素的向量的向量模板类。 部分专业化包括矢量交换模板的实例的并集,其中每个实例表示期望的矢量旋转。 除了定义向量和向量交换数据类型之外,模板类可以重载由面向对象编程语言提供的操作,以执行与遮蔽语言中的操作符的操作相对应的操作。

    System and method for compiling high-level primitive programs into primitive program micro-code
    8.
    发明授权
    System and method for compiling high-level primitive programs into primitive program micro-code 有权
    将高级原始程序编译成原始程序微代码的系统和方法

    公开(公告)号:US08006236B1

    公开(公告)日:2011-08-23

    申请号:US11361597

    申请日:2006-02-24

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443

    摘要: Systems and methods for compiling high-level primitive programs are used to generate primitive program micro-code for execution by a primitive processor. A compiler is configured to produce micro-code for a specific target primitive processor based on the target primitive processor's capabilities. The compiler supports features of the high-level primitive program by providing conversions for different applications programming interface conventions, determining output primitive types, initializing attribute arrays based on primitive input profile modifiers, and determining vertex set lengths from specified primitive input types.

    摘要翻译: 用于编译高级原始程序的系统和方法用于生成原始程序微代码,以由原始处理器执行。 编译器被配置为基于目标原语处理器的能力为特定目标原语处理器产生微代码。 编译器通过为不同的应用程序编程接口约定提供转换,确定输出原语类型,基于原始输入配置文件修饰符初始化属性数组,以及从指定的基元输入类型确定顶点集长度来支持高级原始程序的功能。

    System and method for enabling scene program functionality
    9.
    发明授权
    System and method for enabling scene program functionality 有权
    用于启用场景程序功能的系统和方法

    公开(公告)号:US09218691B1

    公开(公告)日:2015-12-22

    申请号:US12125851

    申请日:2008-05-22

    IPC分类号: G06T1/00 G06T17/00

    摘要: One embodiment of the present invention sets forth a technique for specifying scene programs, where the effect of executing a particular scene program is to generate a sequence of graphics commands. The application programming interface is extended to include calls used to specify a high-level scene program. Upon receiving a high-level scene program, the graphics driver generates a machine code scene program. When an application program emits a call to execute one or more machine code scene programs, the graphics driver transmits corresponding scene programs execution commands to the graphics pre-processing unit. For each scene program execution command, the graphics pre-processing unit processes instructions, programmatically reconfigures the graphics pipeline based on the execution of the machine code scene program, and launches one or more parallel threads that execute commands within the graphics pipeline. Advantageously, using scene programs, application developers may tailor application programs to more effectively dispatch tasks to the GPU.

    摘要翻译: 本发明的一个实施例提出了一种用于指定场景节目的技术,其中执行特定场景节目的效果是生成一系列图形命令。 应用程序编程接口被扩展为包括用于指定高级场景程序的调用。 在接收到高级场景程序时,图形驱动器产生机器码场景程序。 当应用程序发出执行一个或多个机器码场景程序的呼叫时,图形驱动器将对应的场景程序执行命令发送到图形预处理单元。 对于每个场景程序执行命令,图形预处理单元处理指令,以编程方式基于机器码场景程序的执行重新配置图形流水线,并启动执行图形流水线内的命令的一个或多个并行线程。 有利地,使用场景程序,应用程序开发人员可以定制应用程序以更有效地将任务分派给GPU。

    Vector data types with swizzling and write masking for C++

    公开(公告)号:US08010945B1

    公开(公告)日:2011-08-30

    申请号:US11608766

    申请日:2006-12-08

    IPC分类号: G06F9/44

    摘要: One embodiment of the invention includes a method for extending an object-oriented programming language to include support for a shading language vector data type. The method generally includes defining a template class for a shading language vector, defining a template class for a swizzled vector, and partially specializing the vector template class for vectors of one, two, three, and four elements. The partial specialization includes a union of instances of the vector swizzle template, where each instance represents a desired vector swizzle. In addition to defining the vector and vector swizzle data types, the templates classes may overload operators provided by the object-oriented programming language to perform operations corresponding to operations of the operators in the shading language.