着色器代码格式

用于创建像素或顶点着色器的命令由一组着色器代码组成。 这些代码指示驱动程序如何创建着色器。 每个着色器代码内的标记格式确定其唯一性。 着色器代码令牌是具有特定格式的 DWORD。

在将代码传递到驱动程序之前,DirectX3D 运行时将验证着色器代码。 当着色器代码到达驱动程序时,驱动程序可以解释代码,因为代码的格式有效。 驱动程序读取着色器代码的标记以解释代码。

每个单独的着色器代码均使用常规令牌布局进行格式设置。 第一个标记必须是 版本标记。 版本标记提供代码的版本号,还确定代码是用于像素着色器还是用于顶点着色器。 着色器内容遵循版本标记,由各种 指令标记组成,可能与 注释标记 和空格混合。 根据指令令牌指定的精确操作, 标签目标参数源参数令牌 也可以是着色器内容的一部分,并遵循指令标记。 例如,如果指令令牌指定 ADD 指令,则驱动程序将确定一个目标和两个源参数标记跟在指令标记之后。 结束标记完成着色器代码。

设置说明 (例如,D3DSIO_DCL 和 D3DSIO_DEF) 包含唯一格式的令牌。

每个着色器指令都包含特定的令牌格式。 着色器操作代码部分描述每个着色器指令的令牌格式。

着色器说明从主指令开始,以 D3DSIO_RET 或 D3DSIO_END 指令结束。 子例程按照 D3DSIO_RET 指令进行操作。

有关可在指令标记中指定的操作的详细信息,请参阅最新的 DirectX SDK 文档中的 "像素着色器参考" 和 "顶点着色器参考"。

要求

在 Windows 操作系统 Windows Vista 和更高版本中可用。