HLSL コンパイラのプロパティ ページ

HLSL コンパイラ (fxc.exe) プロパティ ページを使用すると、個々の HLSL シェーダー ファイルがどのようにビルドされるのかを構成することができます。 コマンド ライン プロパティ ページの Additional Options プロパティを使用して、HLSL コンパイラに コマンド ライン 引数を指定することもできます。 これには、HLSL プロパティ ページの他のプロパティを使用して構成できない引数が含まれます。 HLSL コンパイラの詳細については、「 Effect-Compiler ツール」を参照してください。

HLSL 全般プロパティ ページ

追加のインクルード ディレクトリ

インクルード パスに追加する 1 つ以上のディレクトリを指定します。 複数のディレクトリを追加する場合は、セミコロンで区切ります。 (/I[パス])

エントリ ポイント名

シェーダーのエントリ ポイントの名前を指定します。 (/E[name])

最適化を無効にする

はい (/Od) 最適化を無効にします。 それ以外の場合は 、いいえ。 既定値は、デバッグ構成の場合は [はい (/Od)]、リリース構成の場合は [いいえ] です。

HLSL コンパイラに 対する /Od コマンド ライン引数は、 暗黙的に /Gfp コマンド ライン引数を適用しますが、 /Od と /Gfp の両方のコマンド ライン引数を明示的に渡すことによって生成される出力と同じでない場合があります。

デバッグ情報を有効にする

デバッグ情報を有効にするには、はい (/Zi)。 それ以外の場合は 、いいえ。 既定値は、デバッグ構成の場合は [はい (/Zi)]、リリース構成の場合は [いいえ] です。

シェーダーの種類

シェーダーの種類を指定します。 異なる種類のシェーダーは、グラフィックス パイプラインの異なる部分を実装します。 特定の種類のシェーダーは、( シェーダー モデル プロパティで指定されている) 最新のシェーダー モデルでのみ使用できます。 たとえば、計算シェーダーはシェーダー モデル 5 で導入されました。

このプロパティは、HLSL コンパイラに対する /T [type]_[model] コマンド ライン引数の [type] 部分に対応します。 [シェーダー モデル] プロパティは、引数の [model] 部分を指定します。

Choices

  • 効果
  • 頂点シェーダー
  • ピクセル シェーダー
  • ジオメトリ シェーダー
  • ハル シェーダー
  • ドメイン シェーダー
  • 計算シェーダー
  • Library
  • メッシュ シェーダー
  • 増幅シェーダー
  • ルート署名オブジェクトを生成する

Choices

  • 効果
  • 頂点シェーダー
  • ピクセル シェーダー
  • ジオメトリ シェーダー
  • ハル シェーダー
  • ドメイン シェーダー
  • 計算シェーダー
  • Library
  • ルート署名オブジェクトを生成する

シェーダー モデル

シェーダー モデルを指定します。 シェーダー モデルが異なると、機能が異なります。 一般に、シェーダー モデルが新しいほど機能は拡張されていますが、シェーダー コードを実行するにはより新しいグラフィックス ハードウェアが必要です。 特定の種類のシェーダー ( シェーダー タイプ プロパティで指定) は、より新しいシェーダー モデルでのみ使用できます。 たとえば、計算シェーダーはシェーダー モデル 5 で導入されました。

このプロパティは、HLSL コンパイラに対する /T [type]_[model] コマンド ライン引数の [model] 部分に対応します。 [シェーダーの種類] プロパティは、引数の [type] 部分を指定します。

すべてのリソースをバインドする

コンパイラは、シェーダーが参照する可能性のあるすべてのリソースがバインドされ、シェーダーの実行期間 (/all_resources_bound) に適した状態にあることを前提としています。 シェーダー モデル 5.1 以降で使用できます。

バインド解除済みの記述子テーブルを有効にする

シェーダーに無制限の範囲 (/enable_unbounded_descriptor_tables) を持つリソース配列の宣言が含まれている可能性があることをコンパイラに通知します。 シェーダー モデル 5.1 以降で使用できます。

ルート署名を設定する

ルート署名をシェーダーのバイトコードに添付します (/setrootsignature)。 シェーダー モデル 5.0 以降で使用できます。

プリプロセッサの定義

HLSL のソース コード ファイルに適用する 1 つ以上のプリプロセッサ シンボル定義を追加します。 セミコロンを使用してシンボル定義を区切ります。

このプロパティは、HLSL コンパイラに対する /D [definitions] コマンド ライン引数に対応します。

Direct2D のカスタム ピクセル シェーダー効果をコンパイルする

ピクセル シェーダーを含む Direct2D カスタム効果をコンパイルします。 頂点または計算カスタム効果には使用しないでください。

複数プロセッサ コンパイル

同時に複数のインスタンスを実行します。

[詳細] プロパティ ページ

著作権情報の非表示

著作権情報と情報メッセージを表示しません。 (/nologo)

警告をエラーとして扱う

コンパイラ警告をすべてエラーとして扱います。 新しいプロジェクトでは、すべてのコンパイルで /WX を使用することをお勧めできます。 すべての警告を解決すると、見つけにくいコードの欠陥が最も少なくなります。

[出力ファイル] プロパティ ページ

ヘッダー変数名

ヘッダー ファイル内の変数名の名前を指定します。 (/Vn [name])

ヘッダー ファイル名

オブジェクト コードを含むヘッダー ファイル名を指定します。 (/Fh [name])

オブジェクト ファイル名

オブジェクト ファイルの名前を指定します。 (/Fo [name])

アセンブラー出力

アセンブリ言語出力ファイルの内容を指定します。 (/Fc、/Fx)

Choices

  • [なし] - リスティングなし。
  • Assembly-Only リスト - アセンブリ コード ファイル。
  • アセンブリ コードと 16 進 - アセンブリ コードと 16 進リスト ファイル。

アセンブラー出力ファイル

アセンブリ コード一覧ファイルのファイル名を指定します。

関連項目

C++ プロジェクトのプロパティ ページのリファレンス
コマンド ライン のプロパティ ページ
シェーダーのコンパイル