リニアワークフローとPBRによる物理的に正しいレンダリング

リニアワークフローとPBRによる物理的に正しいレンダリング

2021-04-05

現実世界と同じようなCGにするためのリニアワークフローとPBR

CGを作ったことがある人は聞いたことがありますか?
「リニアワークフロー(以下LWF)」と「PBR(physical based rendering)」です。
これは、CGを現実と同じようになるようにするという概念の話です。
実際に機能や方法があるわけではありません。

筆者もここ最近はずっとLWFとPBRを意識してCGを作っています。
ではなぜこの概念が必要なのか?
それは、物理的な正しさに基づいて行うと、CGがより鮮明にきれいになります。
筆者の経験からすると、レンダリングスピードも速くなります。
そのため、この両者の考え方は非常に大切なのです。

先ほど、機能や方法があるわけではないといいましたが、
3dsmaxとVrayを使う人は、ここの考え方を整理しておかないと、
マテリアルの設定を行うときや、レンダリング結果に大きな違いが生じます。
そうならない為のリニアワークフローとPBRなのです。

両者とも密接に関係しています。
筆者の説明もPBRに基づいて説明していますが、
特にリニアワークフローは3dsmaxとvrayを使う人にとっては
理解しておかなければなりません。
それでは、それぞれ説明します。

リニアワークフロー(LWF)

リニアワークフローを日本語で言うと、「直線的なワークフロー」です。
では、「何」が直線的なのかというと「ガンマ値」です。


テレビやパソコンのモニターは必ず「ガンマ値」が存在します。
なぜなら、テレビやモニターに映像を映しだすときに
映し出された映像は本来の映像よりもかなり暗くなってしまいます。
ガンマ値は1を超えると暗くなります。そして、ほとんどのテレビやモニターはガンマ値「2.2」で
設定されています。そのため、本来の映像よりも映し出される映像が暗くなります。
それではだめなので、テレビやモニターはその逆数0.45(1/2.2)をかけて、
ガンマ値を1に戻して映像を映し出しています。
実際に映像が暗くならないのは、自動的にテレビやモニターが逆数をかけているからです。

3dsmaxやvrayでは、それをコントロールしなければ、正しいレンダリング結果が得られないのです。

より具体的な説明は、Autodesk社が解説していますので、
もっと具体的に知りたい方は下記のURLをご参照ください。
リニアワークフローについて<その1>

PBR(physical based rendering)

PBRについては、3dsmaxやvrayで設定することはありません。
ただ、実際に物理的に正しいようにマテリアルや光等を設定していきます。
ただ、「正確に物理的に正しい」CGを作るのは難しいと筆者は感じています。
正確には物理的に正しくなるように近づけると思っています。
建築CGはリアルさは求めますが、アニメーションよりも複雑ではありません。(複雑ですが。)
理解は必要ですが、絶対に物理的に正しくしないといけない訳ではありませんので、
気負いせずに、ただ正確にやっていくのが良いと思います。

3dsmax with vrayのリニアワークフローの設定

それでは、実際にリニアワークフローの設定を見ていきましょう。
まずは、3dsmaxでデータを開くと、図-1のような画面がでるかもしれません。

図-1

これは、3dsmaxのガンマ値のシステム設定と開いたファイルのガンマ値の設定が
異なっているときに表示されます。
この場合は、「ガンマ値とLUT補正」が有効になっている方を選びましょう。
そちらがリニアワークフローの設定になります。

※いままでリニアワークフローの設定をせず、「ガンマ値とLUT補正」を有効にしていない場合で
そのデータを有効にすると、レンダリング結果が今までと異なってしまうので、ご注意ください。


つぎに、ガンマ値が有効になっているかどうかの確認をします。
図-2を見てください。

図-2

「ファイル」⇒「基本設定」⇒「ガンマとLUT」に行きます。
ここで、「ガンマ/LUT補正を使用」にチェックが入っているかどうかを確認し、
ガンマが「2.2」であることを確認します。(モニターのガンマ値にします。)
「マテリアルとカラー」のところの2項目もチェックを入れてください。
そして「OK」ボタンを押してください。

これで3dsmaxの設定は終わったので、次はVrayの設定に行きます。

その前に、
通常、Vrayを使用する場合は「VFB(Vray Frame Buffer)」を使用します。
なぜなら、便利だからです。

今まで3dsmaxのレンダリングウィンドウを使用してきた人は、
ぜひVFBを使用してください。こちらの方が高機能です。
VFBの使用方法については、別の記事で解説します。

本題に戻りまして、次にVrayの設定を行います。(図-3)

図-3

「レンダリング設定」⇒「Vray」タブで「color mapping」へ移動します。
ここの「mode」を「color mapping only (no gamma)」にしてください。
そうすれば、「gamma」の数値は調整する必要はありません。
これで、レンダリングまでの設定は完了です。

※ガンマ値を補正する方法は3通りありますが
今回はそのうちの筆者が一番良いと思った方法を紹介しています。

そして、最後はVFBでガンマ補正をonにするだけです。
ここで念のため、3dsmaxのレンダリングウィンドウとレンダリング結果が同じか確認しておきます。(図-4)

図-4

左がVFBで右が3dsmaxのレンダリングウィンドウです。
表示している画像は結果が同じですが、円弧が書かれているマークをonにしてください。
これでVFBに表示されている画像にガンマ値が考慮されたことになります。
もしこれにチェックが入っていいなければ、図-5のようになります。

図-5

左がVFBでガンマ補正表示を消した場合で、右が3dsmaxのレンダリングウィンドウです。
実際にガンマ値を考慮しなれば、本来明るい画像が図-5の左の画像のように暗くなります。
そのまま作業していると、光を明るくしたり、シャッタースピードを遅くしたり
物理的に正しくないことをどんどんしていきます。
リニアワークフローの設定は非常に簡単ですので、
これを機会に実践してみてください。

まとめ

リニアワークフローとPBRを理解すると、CGがより正確できれいでリアルになることは
理解してもらえたと思います。

筆者は以前はリニアワークフローを考えておらず、暗いレンダリング結果を必死で調整していました。
当時は、マテリアルで設定した色とレンダリングの色が全然違うことに違和感を覚えていました。
ただ、理由はリニアワークフローのことも理解していなかったので、その時は理解できていないことすら
理解できていませんでした。

これを機に読んでいただいた皆さんにはぜひ実践していただきたいと思います。
今後の記事もこのリニアワークフローとPBRをベースに記事にしていきます。

また、次回の記事を楽しみにしてください。

全体的にバランス良く記事を書いていっていますが、
特に書いてほしいことや説明してほしいことがあれば、
サイト内の「contact」からいつでもご連絡いただければありがたいです