Introduction to CgFX

来源:互联网 发布:微信软件推广 编辑:程序博客网 时间:2024/04/29 09:49
 

Introduction to CgFX

CgFX Overview

CgFX是一个CG扩展文件格式。除了Cg程序外,CgFX文件也可以描述固定功能图形状态和维护着色器参数的信息。CgFX API使得加载CgFX的效果文件,遍历其中的数据,设置相关的图形状态,等等成为可能。本章介绍了这个新的API和它背后的思想,目的是使用CgFX变得容易。

 

本章假定OpenGL的状态管理,实施的一部分在CgGL运行时,正在使用。由于的CgFX扩展允许,自定义状态管理人员,接受不同的状态的交替状态经理语法也可以提供。例如,一个Direct3D状态管理接受Direct3D的风格的国家名称,而OpenGL状态下的Direct3D经理可能会接受Direct3D的风格的国家名称,但允许进行渲染使用OpenGL。

 

Key Concepts

         Effect

       一个效果文件包含着色器的源代码,参数的集合,渲染技术。影响封装一个或多个不同的方法呈现一个特别的视觉效果。举例来说,效果可能会提供一个方法用于固定功能硬件上使用,和不同的方法上更现代,可编程硬件。

       Technique

       每个效果都包含一个或更多的技术。一种技术是为了封装产生的视觉效果,包括图形的状态,着色器,并且至少一个渲染通道所需的信息。

       Pass

       每个技术都包含一个或多个渲染通道。通道存储图形状态,其中可能包括固定功能状态设置和顶点片段着色器。通道一般是顺序执行的:CgFX设置一个通道的图形状态,应用程序绘制的场景中的几何体,设置下一个通道的状态,绘制几何体一遍,如此类似的。

       State assignment

       通道保存描述通道的图形状态的状态赋值。

       Annotation

       注解使人们有可能与参数相关联的元数据,技术,传递等。例如,一个参数,如lightIntensity可能有注释说明的最低和参数的最大有效值。

Effect parameter

在效果文件的全局作用域中声明的参数是效果参数。效果参数的值可以使用CG运行时API来设置和查询。效果参数可被引用作为右侧的状态赋值,也可以作为在该效果文件内的CG函数或程序的全局参数。

原创粉丝点击