-
公开(公告)号:US06839062B2
公开(公告)日:2005-01-04
申请号:US10373340
申请日:2003-02-24
申请人: David F. Aronson , Amar Patel , Anantha R. Kancheria , Anuj B. Gosalia , Craig Peeper , Daniel K. Baker , Iouri Tarassov , Loren McQuade
发明人: David F. Aronson , Amar Patel , Anantha R. Kancheria , Anuj B. Gosalia , Craig Peeper , Daniel K. Baker , Iouri Tarassov , Loren McQuade
CPC分类号: G06T15/80 , Y10S707/99932 , Y10S707/99942
摘要: Usage semantics allow for shaders to be authored independently of the actual vertex data and accordingly enables their reuse. Usage semantics define a feature that binds data between distinct components to allow them to work together. In various embodiments, the components include high level language variables that are bound by an application or by vertex data streams, high level language fragments to enable several fragments to be developed separately and compiled at a later time together to form a single shader, assembly language variables that get bound to vertex data streams, and parameters between vertex and pixel shaders. This allows developers to be able to program the shaders in the assembly and high level language with variables that refer to names rather than registers. By allowing this decoupling of registers from the language, developers can work on the language separately from the vertex data and modify and enhance high level language shaders without having to manually manipulate the registers. This also allows the same shaders to work on different sets of mesh data, allowing the shaders to be reused. Generally, semantics can be used as a data binding protocol between distinct areas of the programmable pipeline to allow for a more flexible workflow.
摘要翻译: 使用语义允许独立于实际顶点数据创建着色器,从而使其可重用。 使用语义定义了在不同组件之间绑定数据以允许它们一起工作的功能。 在各种实施例中,组件包括由应用程序或顶点数据流约束的高级语言变量,高级语言片段,以使得能够分开开发多个片段并且一起编译在一起形成单个着色器,汇编语言 变量绑定到顶点数据流,以及顶点和像素着色器之间的参数。 这允许开发人员能够使用引用名称而不是寄存器的变量对组装和高级语言中的着色器进行编程。 通过允许寄存器与语言的分离,开发人员可以与顶点数据分开工作,修改和增强高级语言着色器,而无需手动操作寄存器。 这也允许相同的着色器在不同的网格数据集上工作,从而允许重复使用着色器。 通常,语义可以用作可编程管道的不同区域之间的数据绑定协议,以允许更灵活的工作流程。