スカラー型 (DirectX HLSL)

HLSL では、いくつかのスカラー データ型がサポートされています。

  • bool - true または false。
  • int - 32 ビット符号付き整数。
  • uint - 32 ビット符号なし整数。
  • half - 16 ビット浮動小数点値。このデータ型は、言語互換性を維持するためにのみ提供されています。Direct3D 10 シェーダー ターゲットは、すべての half データ型を float データ型にマップします。half データ型は、均一グローバル変数では使用できません (この機能が必要な場合は /Gec フラグを使用します)。
  • float - 32 ビット浮動小数点値。
  • double - 64 ビットの浮動小数点値であり、Direct3D 11 のシェーダー関数の内部で使用できます (均一グローバル変数を宣言するためには使用できません)。シェーダーの外部から double をパックするには、asdouble を呼び出します。

Direct3D 9 と Direct3D 10 の違い

Direct3D 10 では、次のタイプが float 型の修飾子です。

  • snorm float - -1 ~ 1 の範囲の IEEE 32 ビット符号付き正規化浮動小数点数。
  • unorm float - 0 ~ 1 の範囲の IEEE 32 ビット符号なし正規化浮動小数点数。

例として、4 成分符号付き正規化浮動小数点変数の宣言を次に示します。

 snorm float4 fourComponentIEEEFloat; 

文字列の種類

HLSL では、string 型 (ASCII 文字列) もサポートされています。文字列を受け取る演算やステートはありませんが、文字列パラメーターおよびアノテーションは、エフェクトによってクエリされます。

関連項目

データ型 (DirectX HLSL)