シェーディング ネットワークを作成するときに、グラフをプリセットとして保存し、次に新しい Stingray PBS (物理学に基づいたシェーダ)ノードを作成するときに再使用することができます。これにより、同じシェーダ グラフを繰り返し作成する必要がなくなり、マテリアルの管理が容易になって、ゲームのパフォーマンスが向上します。
プリセット シェーダ グラフを含むマテリアルは、親マテリアルといいます。
親マテリアルに基づいて子マテリアルを作成できます。子マテリアルは親マテリアルからシェーダ グラフを継承するため、マテリアルのアトリビュートも継承します。
3ds Max から Stingray にマテリアルを書き出すときに、Stingray シェーダ ノードが既存の Stingray リソース(Stingray プロジェクト フォルダ内のマテリアル)を指している場合、Stingray は新しい親マテリアルを作成しません。
この Stingray リソースを指すようにするには、3ds Max で DirectX マテリアルの [Stingray](Stingray)ロールアウトにある[親マテリアル](Parent Material)フィールドを設定します。
このフィールドを編集できるのは、次の操作を初めて実行する場合のみです。
こうすると、[親マテリアル](Parent Material)パスを誤って変更することがなくなります。
このフィールドが空の場合、シェーダ グラフは親マテリアルであるとみなされます。このシェーダを Stingray に書き出すと、新しい親マテリアルが作成されます。
一方、パスおよびリソース名(/content/materials/my_stingray_material など)を指定して書き出しを行うと、シェーダ グラフは /content/materials/my_stingray_material にある親グラフを指します。このシェーダが Stingray に読み込まれている場合、Stingray は親グラフを再作成しません。ただし、3ds Max では ShaderFX エディタのグラフを Stingray ゲーム エンジンの親グラフと同じにする、つまり自分のパス上に設定する必要があります。
このフィールドにパスまたは名前を入力したにもかかわらず、親マテリアルが Stingray プロジェクト フォルダ内に存在しない場合は、作成されたグラフに基づいて新しい親マテリアルが作成されます。
Stingray で親グラフを作成し、ShaderFX エディタに読み込むこともできます。この操作を実行するには、[ファイル](File) > [グラフを読み込み](Import Graph)を選択し、ファイル タイプ ドロップダウン リストから .material を選択します。
このグラフを 3ds Max にプリセットとして保存するには、[ファイル](File) > [グラフを書き出し](Export Graph)を選択し、それを .sfx として renderData¥shaders に保存するか(現在のプロジェクトで使用可能)、¥Documents¥3dsMax¥ShaderFX¥Scenes¥StingrayPBS に保存します(グローバルに使用可能)。 これで、[Stingray](Stingray)ロールアウトの[プリセット マテリアル](Preset Material)ドロップダウンでプリセットとして使用できるようになりました。