チュートリアル / fieldjamのDesignVizエッセンス
第10回:Compositeのススメ - HDR画像について
- 3ds Max
- コラム
- チュートリアル
- 合成
- 建築・製造・広告
HDR画像の出力と補正
では、以下の設定を用いてV-rayでレンダリングします。


カメラはVray Phisical Camera、フレームバッファはVray Frame bufferを用い、Color mappingも図のように(デフォルト)設定します。この3つの要素は、HDRレンダリングを行なう上でとても重要なものです。カメラの設定はシーンに応じて変化しますが、V-rayのフレームバッファを使うことと、このColor mappingの設定は、HDRレンダリングにおいては必須です。
下の図のような結果になりますが、Color mappingのガンマが1.0なのでコントラストが強く表示されています。Vray Frame bufferの表示ガンマは3ds Maxのガンマ設定とは関係ないので、図の[sRGBボタン]で表示ガンマ補正を行うと、適正に表示されます。


次に、カメラのISO値を400に変更してレンダリングします。

同じ画像内での図示した2点のRGB値(float)を比較します。




2番目の画像ではRGB値が1.0を超えていることに注目してください。このようなピクセルが現れることはデイライトシーンではよくあります。さて、各画像内の日向の部分である2点間の比を計算すると、ほぼ1:2で、設定しているRGB値の比と同じになっていることが分かります。これは、Color mappingで【Linear multiply】を選択しガンマを1.0にしているためであり、他の手法(Exponentialなど)や1.0以外のガンマ値を用いると、このような結果にはなりません。
この検証から、V-rayでのレンダリング結果は、自然界と同じリニアデータのHDRを出力できることが確認できました。
さて、2番目の画像は全体が白トビしていますが、この画像をLDR画像とHDR画像で保存します。LDRのフォーマットは16bit/PNG、HDRは32bit/EXRを使用し、出力ガンマは1.0にしました。これらをPhotoshopに読み込んで明るさを補正します。


16bit/PNG

32bit/EXR
Photoshopの【レベル補正】で、出力最大値を半分にしました。HDR画像は1.0を超える明るさを保持しているので、出力最大値を低くしてもその部分の情報が再現されます。一方、LDR画像は1.0以上の情報を保持していないので、白トビしている部分の情報は均一に暗くなります。また、今回のLDR画像は16bitですが、当然8bitであっても同様の結果になります。LDR画像のビット深度の違いは、明るさが0.0~1.0の範囲の階調数のみです。この結果から、ダイナミックレンジが大きなシーンは、HDR画像として出力しなければディテールが失われるということが確認できます。ここではハイライト部分を確認しましたが、シャドウ部分についても同様です。