maya.rayrc ファイルを編集する

既定の maya.rayrc ファイルは、mental ray for Maya プラグインとともに自動的にインストールされています。Maya の各バージョンには関連付けられた maya.rayrc ファイルがあり、たとえば、Maya 2014 のファイルと Maya 2015 のファイルがあります。

このファイルを使用して mental ray レジストリ エントリを設定します。オプションで maya.rayrc ファイルを編集することもできます。

これは、起動時に Maya を経由しない統合された mental ray によって読み取られます。

このファイルは通常の .mi 構文に対応しており、検索パスなどの mental ray の内部設定をカスタマイズするために使用できます。このファイルに直接ロードされるカスタム シェーダ パッケージは、Maya では認識されません。したがって、ノード ファクトリのメカニズムを利用して、シェーダを Maya ノードとして表示し、mental ray に自動的にロードされるようにします。

maya.rayrc を編集したら Maya の再起動が必要になります。代わりに、スクリプト エディタ(Script Editor)で以下を入力することもできます(詳細については『Mayatomr MEL』マニュアルを参照)。

Mayatomr -updateRayrc

グローバル プリファレンスとローカル プリファレンス

maya.rayrc レジストリ エントリは、同じマシン上のすべてのユーザにグローバルに適用されます。管理者権限のあるユーザのみがこのファイルを修正することができます。ただし、個人のプリファレンスに合うようにこのファイルのローカル バージョンを作成することができます。

これを行うには、グローバル ファイルを Maya prefs フォルダ(プリファレンス フォルダの参照先については「プリファレンスの保存」を参照)にコピーし、必要に応じてこのローカル ファイルを編集します。ファイルのローカル バージョンは、グローバル バージョンより優先されます。

このローカル ファイルが正しくロードされたかどうかを確認するには、Mayatomr.mll プラグインをロードした後に Maya のスクリプト エディタ(Script Editor)を開き、次の行が存在することを確認します。

// mental ray for Maya: loading startup file: C:/Users/yourName/Documents/maya/2015-x64/prefs/maya.rayrc

シェーダ ライブラリ

mental ray for Maya は既定で、次の既定のインストール ディレクトリにあるシェーダ ライブラリを検索します。

Windows:

...¥Autodesk¥Maya2015¥mentalray

Mac OS X:

.../files/Applications/Autodesk/maya2015/Maya.app/Contents/mentalray

Linux:

.../files/usr/autodesk/maya2015/mentalray

所定のシェーダ パッケージをレンダリングのために mental ray にプリロードする必要がある場合、これらを maya.rayrc に追加できます。

注:

maya.rayrc ファイルは、Maya でカスタム ノードを作成しません。代わりに、環境変数の MI_CUSTOM_SHADER_PATH と MI_LIBRARY_PATH と一緒に使用する必要があります。シェーダをロードするを参照してください。

maya.rayrc ファイルを編集するには

以下は maya.rayrc ファイルの編集例です。

ここでは、宣言ファイルが myshader.mi、シェーダ ファイルが myshader.dll/so であると仮定します。

	link "SHADER_FILE_DIRECTORY/myshader.{DSO}" 
	$include "MI_FILE_DIRECTORY/myshader.mi"

maya.rayrc の一例:

# define some useful registry variables
	registry "{MAYABASE}" 
	value "C:/Program Files/Autodesk/Maya2015/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
注:

新しい MAYA_MR_STARTUP_DIR 環境変数を使用することで、maya.rayrc スタートアップ ファイルの位置を指定できるようになりました。

OpenEXR 2.0 の複数パーツの出力

mental ray for Maya は OpenEXR 2.0 の複数パーツおよび複数レイヤの出力をサポートします。mental ray は個別の OpenEXR パーツに複数のレイヤを書き込むことができます。OpenEXR パーツの名前は mental ray フレーム バッファの名前と一致します。

複数パーツの EXR ファイルは、OpenEXR 2.0 複数パーツ ファイルの読み取りをサポートするアプリケーションでファイルの読み取りパフォーマンスを向上させることができます。ただし、ファイルを読み取るアプリケーションがこの標準をサポートしていない場合、ファイルは下位互換性がなくなります。

この機能は OpenEXR 1.7 と互換性がありません。このため、mental ray for Maya は下位互換性のため、複数パーツの出力を既定で無効にするように _MI_OPENEXR_MULTI_PART レジストリ値を設定します。複数パーツの出力を有効にするには、maya.rayrc ファイルからこのレジストリ値を削除します。