方法: シェーダーをエクスポートする
このドキュメントでは、Directed Graph Shader Language (DGSL) シェーダーをアプリで使用できるようにシェーダー デザイナーを使用してエクスポートする方法を説明します。
このドキュメントでは、このアクティビティについて説明します。
- シェーダーのエクスポート
シェーダーのエクスポート
シェーダー デザイナーを使用して作成したシェーダーをアプリで使用するには、グラフィックス API が理解できる形式でシェーダーをエクスポートする必要があります。シェーダーはニーズに応じてさまざまな方法でエクスポートできます。
シェーダーをエクスポートするには
Visual Studio で、視覚シェーダー グラフ (.dgsl) ファイルを開きます。
開く視覚シェーダー グラフ (.dgsl) ファイルがない場合、「方法: 基本カラー シェーダーを作成する」に示された手順で作成します。
[Shader Designer] のツール バーで、[詳細設定]、[エクスポート]、[Export As] を選択します。[シェーダーのエクスポート] ダイアログ ボックスが表示されます。
[保存の種類] ドロップダウン リストで、エクスポートする形式を選択します。
ここでは次の形式を選択できます。
HLSL ピクセル シェーダー (*.hlsl)
上位レベル シェーダー言語 (HLSL) のソース コードとしてシェーダーをエクスポートします。このオプションにより、アプリに配置した後でも、シェーダーを変更することができます。これによりエンド ユーザーの問題に基づくコードのデバッグと修正が簡単になりますが、競争ゲームで不正にスコアを獲得するためなど、ユーザーが望ましくない方法でシェーダーを変更することが簡単になります。また、シェーダーの読み込み時間を長くすることがあります。コンパイル済みピクセル シェーダー (*.cso)
HLSL バイトコードとしてシェーダーをエクスポートします。このオプションにより、アプリに配置した後でも、シェーダーを変更することができます。これによりエンド ユーザーの問題に基づくコードのデバッグと修正が簡単になりますが、シェーダーがプリコンパイルされるため、シェーダーがアプリに読み込まれるときも追加ランタイム オーバーヘッドは発生しません。この場合もある程度のスキルを持つユーザーであれば望ましくない方法でシェーダーを変更できますが、シェーダーがコンパイルされているため、変更が大幅に難しくなります。C++ ヘッダー (*.h)
HLSL バイトコードを含むバイト配列を定義する C++ スタイル ヘッダーとしてシェーダーをエクスポートします。このオプションでは、修正のテストにアプリの再コンパイルが必要になるため、エンド ユーザーの問題に基づくコードのデバッグと修正に時間がかかる可能性があります。しかし、アプリへの配置後のシェーダーの変更は不可能とはいえないまでも困難になるため、ユーザーが望ましくない方法でシェーダーを変更することが最も困難になります。
[ファイル名] ボックスにエクスポートするシェーダーの名前を指定し、[保存] ボタンをクリックします。