プロジェクトによって様々ですが3ds Maxのカラーマネジメント設定の例をご紹介します。
パターン1 ACES OCIO
3ds Max
項目 | 設定 |
---|---|
Rendering RGB primaries | ACEScg |
Frame Buffer: Input Colorspace | ACES – ACEScg |
Frame Buffer: Display Device | ACES |
Frame Buffer: View Transform | sRGB |
Texture: カラー: Colorspace transfer function | sRGB |
Textrue: カラー: RGB primaries | sRGB primaries |
Textrue: 白黒、Normal : Colorspace transfer function | Inverse gamma (値: 1.0) ※Noneと同じ |
Textrue: 白黒、Normal: RGB primaries | Raw |
Vrayカラーノード: RGB primaries | ACEScg primaries |
HDRI: Colorspace transfer function | Inverse gamma (値: 1.0) ※Noneと同じ |
HDRI: RGB primaries | sRGB primaries |
Nuke
上記の3ds Maxの設定でレンダリングしたものを、Nukeで確認したい時の設定について。
下記の設定をすれば3ds Maxのレンダービューと同じ結果を確認できます。
項目 | 設定 |
---|---|
viewerProcess | sRGB(ACES) |
Properties: color management | OCIO |
レンダーexr: Input Transform | default(scene_linear) |
おまけ
レンダーノイズを軽減
レンダリングの精度を上げたい時、
モデルチェックのレンダリングの場合、Noise Thresholdを0.005~0.001にすることで手軽にノイズの軽減ができます。
Noise Thresholdは数値が低いほどノイズが減り、レンダリング時間が増えます。
本番レンダリングでは、色々な項目を細かく設定して、レンダリン時間をできるだけ抑えつつ、レンダリング精度を上げますが、モデリングチェック用のターンテーブルをレンダリングする場合は、検証時間をかけるほうがもったいないことが多いので、Noise Thresholdを調整して、それではレンダリング時間がかかりすぎるような場合はsubdivsやsampleを調整しています。
TextureのColor spaceとRGB color spaceをスクリプトで変換する
※スクリプトに詳しいわけではないので下記のスクリプトを使用する際はテスト・確認してから、自己責任でのご使用をお願いいたします。いかなる問題が起こったとしても当方で責任は負いかねますことをご了承ください。
VrayBitmapのColor space transfer function
- Typeを全てInverse gammaにする
for mtl in getClassInstances vraybitmap do (
mtl.color_space = 1
)
- TypeをdiffuseのみsRGBにする
for mtl in getclassinstances vraymtl where mtl.texmap_diffuse != undefined and iskindof mtl.texmap_diffuse vraybitmap do (
mtl.texmap_diffuse.color_space = 2
)
VrayBitmapのRGB color space
- RGB primarisを全てRawにする
for mtl in getClassInstances vraybitmap do (
mtl.rgbColorSpace = 3
)
- RGB primarisをdiffuseのみsRGB primaries
for mtl in getclassinstances vraymtl where mtl.texmap_diffuse != undefined and iskindof mtl.texmap_diffuse vraybitmap do (
mtl.texmap_diffuse.rgbColorSpace = 1
)
上記4つとも数字の部分を変更することでsRGBやRawなど設定したいものに変更ができます。
それぞれプルダウンメニューの上から順に0からの数字が割り当てられています。
Script Editですべて実行(Ctrl + E)
ちゃんとしたスクリプトを作成するのが一番ですが、上記のスクリプトを全て実行することもできます。
上から順に実行されます。
for mtl in getClassInstances vraybitmap do (
mtl.color_space = 0
)
for mtl in getclassinstances vraymtl where mtl.texmap_diffuse != undefined and iskindof mtl.texmap_diffuse vraybitmap do (
mtl.texmap_diffuse.color_space = 2
)
for mtl in getClassInstances vraybitmap do (
mtl.rgbColorSpace = 3
)
for mtl in getclassinstances vraymtl where mtl.texmap_diffuse != undefined and iskindof mtl.texmap_diffuse vraybitmap do (
mtl.texmap_diffuse.rgbColorSpace = 1
)
紹介: Gamma Organizer
https://www.scriptspot.com/3ds-max/scripts/gamma-organizer
gammaやRGB primariesの一覧と変更ができるプラグインです。
無料版と有料版があります。無料版は一覧はなく変更機能のみです。
自社スクリプトがなかったり、自分で作成が難しい場合はこういったものはありがたいですね。