インタフェース: renderpresets
このインタフェースでは、3ds Max 6 で導入されたレンダリング プリセット システムにアクセスできます。
メソッド:
<boolean>renderpresets.Save <integer>which <filename>file <bitArray>categories
bitArray によって記述されたカテゴリを使用して、指定したファイルにプリセットを保存します。
正常に終了した場合は true を返します。
整数 which では、ロードするレンダラー スロットを次のように指定します。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
注:
整数値を 2 より大きくすると、システム例外が発生します。
<boolean>renderpresets.Load <integer>which <filename>file <bitArray>categories
bitArray によって記述されたカテゴリを使用して、指定したファイルからプリセットをロードします。
正常に終了した場合は true を返します。
整数 which では、ロードするレンダラー スロットを次のように指定します。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
<boolean>renderpresets.SaveAll <integer>which <filename>file
すべてのカテゴリを使用して、指定したファイルにプリセットを保存します。
正常に終了した場合は true を返します。
整数 which では、ロードするレンダラー スロットを次のように指定します。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
<boolean>renderpresets.LoadAll <integer>which <filename>file
すべてのカテゴリを使用して、インデックスで指定したプリセットを指定したファイルからロードします。
正常に終了した場合、 true を返します。
整数 which では、ロードするレンダラー スロットを次のように指定します。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
<boolean>renderpresets.IsFileCompatible <integer>which <filename>file
整数 which によって指定されたレンダラー スロットとの互換性が、指定されたファイルにある場合は true 、互換性がない場合は false を返します。
整数 which は次のうちのいずれかです。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
<string>renderpresets.MapIndexToCategory <filename>file <integer>index
提供されたファイルの指定されたインデックスに対応するカテゴリの名前を含む文字列を返します。このページの例を参照してください。
<integer>renderpresets.MapCategoryToIndex <filename>file <string>category
提供されたファイル内の指定されたカテゴリ名に対応するインデックスを返します。
<string>renderpresets.MapSceneIndexToCategory <integer>which <integer>index
次のように、整数 which によって指定されたレンダラー スロットに対応するカテゴリの名前を含む文字列を返します。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
<integer>renderpresets.MapSceneCategoryToIndex <integer>which <string>category
次のように整数 which で指定されたインデックス スロットを返します。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
<bitArray>renderpresets.LoadCategories <filename>file
指定されたレンダリング プリセット ファイルで使用できるカテゴリを bitArray として返します。それぞれのビットがカテゴリを表します。このページの例を参照してください。
例
|
renderPresets.LoadCategories (GetDir #renderPresets +"/mental.ray.no.gi.draft.rps")
#{32..34}
|
<bitArray>renderpresets.SaveCategories <integer>which
指定されたレンダラーで使用できるカテゴリを bitArray として返します。bitArray では、指定されたレンダラーで保存できるカテゴリごとにビットが設定されます。
整数 which は次のうちのいずれかです。
0 - プロダクション
1 - マテリアル エディタ
2 - ActiveShade
警告:
|
[アドバンスド ライティング](Advanced Lighting)パネルによってラジオシティのプリセットを 保存 および ロード すると、ラジオシティ ソリューションが 失われてしまいます。
ラジオシティ ソリューションの設定に時間を費やしてきた場合などは、レンダリング プリセット ファイルをロードするときにアドバンスド ライティング カテゴリを 選択しないようにすることをお勧めします。
|
次のスクリプトでは、すべてのレンダリング プリセット ファイルからすべてのカテゴリが出力されます。これを使用すると、ファイルを「調査」して、どのファイルにどのカテゴリが保存されているか、およびどのカテゴリが
BitArray のどのインデックスに対応するかを判断できます。
例
|
(
--Collect all Render Presets files:
theFiles = getFiles (GetDir #renderPresets + "\\*.rps")
--For each Render Presets file,
for f in theFiles do
(
format "\nRender Preset: %\n" (getFileNameFile f) --Print the file name
--Get the category indices as BitArray and loop through them,
--printing the index and the corresponding category name:
for c in (renderPresets.LoadCategories f) do
format "%: %\n" c (renderpresets.MapIndexToCategory f c)
)
)
|
結果:
|
Render Preset: 3dsmax.scanline.no.advanced.lighting.draft.rps
32: Default Scanline Renderer
33: Advanced Lighting
34: Raytracer
Render Preset: 3dsmax.scanline.no.advanced.lighting.high.rps
32: Default Scanline Renderer
33: Advanced Lighting
34: Raytracer
Render Preset: 3dsmax.scanline.radiosity.draft.rps
3: Environment
32: Default Scanline Renderer
33: Advanced Lighting
34: Raytracer
Render Preset: 3dsmax.scanline.radiosity.high.rps
3: Environment
32: Default Scanline Renderer
33: Advanced Lighting
34: Raytracer
Render Preset: a.rps
1: Common
4: Render Elements
32: Default Scanline Renderer
33: Advanced Lighting
34: Raytracer
Render Preset: b.rps
1: Common
4: Render Elements
32: Default Scanline Renderer
33: Advanced Lighting
34: Raytracer
Render Preset: mental.ray.hidden.line.contours.rps
32: mental ray Renderer
33: Processing
Render Preset: mental.ray.no.gi.draft.rps
32: mental ray Renderer
33: Processing
34: Indirect Illumination
Render Preset: mental.ray.no.gi.high.rps
32: mental ray Renderer
33: Processing
34: Indirect Illumination
OK
OK
|
この情報を使用すると、MAXScript を使用してファイルから 1 つのカテゴリを簡単にロードできます。次の例では、カテゴリ 32 - mental ray レンダラーのみがロードされますが、ファイルに保存されているカテゴリ
33 と 34 (Processing と Indirect Illumination)はロードされません。
例
|
renderpresets.Load 0 (GetDir #renderPresets + "\\mental.ray.no.gi.high.rps") #{32}
|