次の方法で、カスタム シェーダ ライブラリを読み込めます。
これらの方法については、以下で詳細に説明します。
カスタム シェーダ ライブラリを読み込むには
mental ray for Maya は、カスタム シェーダ ライブラリをロードし、レンダーすることもできます。また、include ディレクトリに宣言ファイルを配置すると、mental ray for Maya を使用してファイルを構文解析し、ライブラリ内で宣言されたシェーダに対応する新規の Maya ノード タイプを作成します。
シェーダ マネージャ(Shader Manager)では、Maya セッション時に mental ray シェーダ ライブリのロード、アンロード、操作を行うことができます(最初のシャットダウン、環境変数 MI_CUSTOM_SHADER_PATH の設定は不要です)。
mental ray シェーダ宣言を収納した .mi ライブラリ ファイルのリストから選択することができます。.mi ライブラリ ファイルに収納されたシェーダは、Maya と mental ray for Maya ベース シェーダ ノードと同様に、自動的にハイパーシェード(Hypershade)に表示されます。この場合、mental ray for Maya ベース シェーダは、ハイパーシェード(Hypershade)とレンダー ノードの作成(Create Render Node)パネルに完全に統合されています
(ハイパーシェード(Hypershade)でカスタム シェーダを表示するために、環境変数 MAYA_MRFM_SHOW_CUSTOM_SHADERS の設定は不要です)。
カスタム mental ray シェーダをロードまたはアンロードするには
シェーダ マネージャ(Shader Manager)が開き、ロードされた宣言ファイルが表示されます。
mental ray for Maya でレンダーするシェーダをロードするには、シェーダ マネージャ(Shader Manager)を使用する場合を除き、.mi ファイルを MI_CUSTOM_SHADER_PATH 環境変数に追加する必要があります。
シェーダ ライブラリ バイナリを MI_LIBRARY_PATH 環境変数に追加することも必要です。
多数のディレクトリにシェーダ ライブラリ バイナリが存在する場合、環境変数 MI_CUSTOM_SHADER_PATH および MI_LIBRARY_PATH と一緒に maya.rayrc ファイルを使用する必要があります。詳細については、maya.rayrc ファイルを編集するを参照してください。
この変数は mental ray for Maya に .mi ファイルのあるディレクトリの位置を教えます。MI_CUSTOM_SHADER_PATH にあるすべての .mi ファイルはプラグインのロード時に解析されます。
この環境変数は、プラグインをロードする前に設定します。mental ray for Maya がこの変数を解釈する方法には何通りかのパターンがあります。この環境変数が空でなくても、既存のファイルやディレクトリにポイントしていない場合は、ファイル ダイアログが開き、mental ray for Maya プラグインが(自動的に)ロードされます。ファクトリが作成する Maya ノード タイプの mental ray シェーダ/フェノメナの宣言を含む .mi ファイルを選択します。ファイルのダイアログが繰り返し表示され、複数の .mi ファイルを同じようにロードすることができます。キャンセル(Cancel)ボタンを押すとダイアログは表示されなくなります。
ファクトリに必要なファイルをすべて自動的にロードさせたい場合は、ファイルまたは .mi ファイルを含むディレクトリを環境変数の中で提示してください。ファイルを 1 つだけロードするには、以下のように MI_CUSTOM_SHADER_PATH を設定します。
setenv MI_CUSTOM_SHADER_PATH /usr/local//autodesk/Maya2015/mentalray/shaders/include/base.mi
set MI_CUSTOM_SHADER_PATH=C:/Program Files/Autodesk/Maya2015/mentalray/shaders/include/base.mi
ディレクトリ内のファイルをすべて解析するには、以下を使用します(ファイル ダイアログは表示されません)。
setenv MI_CUSTOM_SHADER_PATH /usr/local/mi/rayinc
set MI_CUSTOM_SHADER_PATH=c:/usr/local/mi/rayinc
MI_CUSTOM_SHADER_PATH の既定値は、Maya2015/mentalray/include です。
Maya.env を変更すると、パスに独自のディレクトリを追加できます。たとえば、Maya.env に以下の行を加えると、パスに C:¥myshader¥include が加わります。
MI_CUSTOM_SHADER_PATH = C:¥myshader¥include
シェーダが既定でロードされるようにするには、ディレクトリをパスに追加するか、またはファイルをパスに配置します。
mental ray プラグインがロードされるあいだに base.mi、contour.mi、physics.mi が解析され、.mi ファイルで宣言した各シェーダのノードが作成されます。作成されるノードについては、スクリプト エディタ(Script Editor)をご覧ください。
シェーダと同様です。.mi ファイルが MI_CUSTOM_SHADER_PATH にある場合、スクリプト エディタ(Script Editor)にシェーダの名前が表示されるはずです。たとえば、スクリプト エディタ(Script Editor)には以下の 4 行があります(Var miFactoryVerbosity オプションが 4 以上に設定されている場合)。(myshader1 および myshader2 は myshader.mi で宣言されています)。
// generating nodes ... // parsing C:/myshader/include/myshader.mi // myshader1 // myshader2
これは mental ray for Maya にシェーダ ライブラリ バイナリの場所を通知する変数です。
ファイルを 1 つだけロードするには、MI_LIBRARY_PATH を次のように設定します。
setenv MI_LIBRARY_PATH /usr/local//autodesk/Maya2015/shaders/base.so
set MI_LIBRARY_PATH=C:/Program Files/Autodesk/Maya2015/mentalray/shaders/base.dll
ディレクトリ内のファイルをすべて解析するには、以下を使用します(ファイル ダイアログは表示されません)。
setenv MI_CUSTOM_SHADER_PATH /usr/local/mi/raylib
set MI_CUSTOM_SHADER_PATH=c:/usr/local/mi/raylib
Maya.env を変更すると、パスに独自のディレクトリを追加できます。たとえば、Maya.env に次の行を追加すると、パスに C:¥myshader¥lib が追加されます。
MI_LIBRARY_PATH = C:¥myshader¥lib
バイナリが既定でロードされるようにするには、ディレクトリをパスに追加するか、またはファイルをパスに配置します。