オプションで maya.rayrc ファイルを編集することもできます。
maya.rayrc ファイルは、Maya でカスタム ノードを作成しません。代わりに、環境変数の MI_CUSTOM_SHADER_PATH と MI_LIBRARY_PATH と一緒に使用する必要があります。シェーダをロードするを参照してください。
これは、起動時に Maya を経由しない統合された mental ray によって読み取られます。
このファイルは通常の .mi 構文に対応しており、検索パスなどの mental ray の内部設定をカスタマイズするために使用できます。このファイルに直接ロードされるカスタム シェーダ パッケージは、Maya では認識されません。したがって、ノード ファクトリのメカニズムを利用して、シェーダを Maya ノードとして表示し、mental ray に自動的にロードされるようにします。
mental ray for Maya は既定で、次の既定のインストール ディレクトリにあるシェーダ ライブラリを検索します。
...¥Autodesk¥Maya2014¥mentalray
.../files/Applications/Autodesk/maya2014/Maya.app/Contents/mentalray
.../files/usr/autodesk/maya2014/mentalray
所定のシェーダ パッケージをレンダリング mental ray にプリロードする必要がある場合、これらを maya.rayrc に追加できます。
maya.rayrc を編集したら Maya の再起動が必要になります。または、スクリプト エディタで以下を入力します(詳細については『Mayatomr MEL』マニュアルを参照)。
ここでは、宣言ファイルが myshader.mi、シェーダ ファイルが myshader.dll/so であると仮定します。
link "SHADER_FILE_DIRECTORY/myshader.{DSO}"
$include "MI_FILE_DIRECTORY/myshader.mi"
# define some useful registry variables
registry "{MAYABASE}"
value "C:/Program Files/Autodesk/Maya2014/mentalray"
end registry
registry "{SYSTEM}" value "windows" end registry
registry "{DSO}" value "dll" end registry
# adjust mental ray library search path to look for
# shader binaries in my local directory first
registry "{_MI_REG_LIBRARY}"
value "C:/myshader/Release;{MAYABASE}/lib"
end registry
# execute expensive commands upon rendering only
registry "{_MI_MAYA_STARTUP}"
value "mental ray startup upon first render"
# force some standard shaders into mental ray hidden to Maya
# (not using explicit directory path here when using network rendering)
link “myshader.{DSO}”
# force the declaration of my shaders into mental ray, in case
# it was not loaded with mental ray for Maya Node Factory
mi "C:/myshader/include/myshader.mi"
echo "mental ray for Maya - custom startup done"
end registry