register (DirectX HLSL)

シェーダー変数を特定のレジスタに割り当てるためのオプションのキーワードです。構文は次のとおりです。

: register ( [shader_profile,] Type#[subcomponent] )

パラメーター

register
必須キーワードです。
[shader_profile,]
オプションのシェーダー プロフィールです。シェーダー ターゲットを指定できるほか、単に ps または vs を指定することもできます。
Type#[subcomponent]

レジスタのタイプ、番号、およびサブコンポーネントの宣言です。

  • Type は次のいずれかです。

    Typeレジスタの説明
    b定数バッファー
    tテクスチャーとテクスチャー バッファー
    cバッファーのオフセット
    sサンプラー
    uアンオーダード アクセス ビュー
  • # はレジスタ番号を示す整数です。
  • subcomponent はオプションの整数です。

解説

1 つ以上のレジスタ割り当てをスペースで区切って同じ変数宣言に記述できます。

グローバル スコープ内の Direct3D 10 変数の場合、register キーワードは packoffset (DirectX HLSL) キーワードと同じ役割を果たします。

いくつかの例を次に示します。

 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] ); 

関連項目

変数 (DirectX HLSL)

表示: