オプションで 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\Maya2012\mentalray
.../files/Applications/Autodesk/maya2012/Maya.app/Contents/mentalray
.../files/usr/autodesk/maya2012/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/Maya2012/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