register
用于将着色器变量分配给特定寄存器的可选关键字 (keyword) ,该寄存器使用以下语法:
:register ( [shader_profile], Type#[subcomponent] ) |
---|
参数
-
注册
-
必需的关键字 (keyword) 。
-
[shader_profile]
-
可选 着色器配置文件,可以是着色器目标,也可以是 ps 或 vs。
-
Type#[subcomponent]
-
寄存器类型、数字和子组件声明。
类型为下列类型之一:
类型 注册说明 b 常量缓冲区 t 纹理和纹理缓冲区 c 缓冲区偏移量 S 取样器 u 无序访问视图 # 是寄存器编号,即整数。
子组件是可选的整数。
备注
可以将一个或多个寄存器赋值添加到同一变量声明中,用空格分隔。
对于全局范围内的 Direct3D 10 变量,寄存器关键字 (keyword) 与 packoffset (DirectX HLSL) 关键字 (keyword) 相同。
示例
下面是一些示例:
sampler myVar : register( ps_5_0, s );
sampler myVar : register( vs, s[8] );
sampler myVar : register( ps, s[2] )
: register( ps_5_0, s[0] )
: register( vs, s[8] );
另请参阅