スキップしてメイン コンテンツに移動

SLIKライティングについての予備知識

通常ライティングを行う場合に、使用する光源が直接光なのか間接光なのかということは、重要な要素になります。
間接光とは、一般的には光が壁などに当たり跳ね返った光を指しますが、CGの場合は発光させたポリゴンや、HDRIなどの背景を光源としたものも間接光になります。
厳密には、間接光というより間接光成分と言った方がいいかもしれません。
簡単にいうと、GIがオフで表現されない光はすべて間接光成分になります。
直接光は、マテリアルのスペキュラーの設定に応じて疑似光沢を表現することができますが、間接光はスペキュラーに対応していません。
modoでは、GIをオンにしてイラディアンスキャシュを使用する場合、直接光による間接光はイラディアンスキャシュで計算されますが、直接光自体はイラディアンスキャシュの対象外と考えていいでしょう。また、間接光成分はすべてイラディアンスキャシュによって計算されます。
これらのことを理解してライティングを組み立てる必要があります。
具体的には直接光によるライティングは、イラディアンスキャシュに左右されないので細かいディテールを表現しやすいですが、間接光成分はイラディアンスキャシュによって計算を間引くわけですから、細かいディテールの表現は苦手とします。
また、間接光成分で、光沢を表現するには反射を設定し素材に応じてブラーリフレクションを設定する必要があります。ただし、直接光のスペキュラーがフェイクなのに対して反射を使った光沢はリアルです。
例えば、インテリアのCG画像でねむい調子のものを見かけることがありますが、これは直接光と間接光の使い分けができていないのが原因の場合も少なくありません。
もし自分のレンダリング画像が眠いと感じたら、小さめのサイズでいいので、一度イラディアンスキャシュを使わずにレンダリングしてみてはどうでしょうか。極端に改善されれば、イラディアンスキャシュによってディテールがつぶれている可能性があります。
余談ですが、レンダリング画像をモノクロに変換して格段にきれいに見える場合は、マテリアルのガンマ設定が正しくない可能性があります。
もっと余談ですが、Maxwell Renderやfryrenderのレンダリングがきれいなのは、計算のアルゴリズムが違うのも大きいですが、イラディアンスキャシュを使わないノンバイアスでレンダリングしているのも理由です。
また、V-rayがきれいなのは、一回目のパスで精度の高いイラディアンスキャシュ計算を行いきっちりとディテールを出して、あとのパスはライトキャッシュで軽めの計算をしているからだと思います。その他にもファイナルギャザリングを使ったものやレンダリングエンジンにはいろんなものがありますが、どれがきれいだとか判断する前にこれらの違いをレンダリングエンジンの個性だとかセッティングの違いと思うのも大切です。
レンダリングエンジンの癖を理解できればどのレンダリングソフトでもまずまずきれいな画像は作成できるはずだと思います。
かなり話が脱線してきましたが、SLIKの6種類のライトには直接光のものと間接光のものがありますので、使い分けが重要になると言う話なわけです。
次はその6種類のライトについて書こうと思いますが、どうもそれはおかしいぞというところも見えてきたので、少し辛口コメントでいきます。

コメント

  1. hibiさん おはようございます。Twitterの方もfollowさせていただいています。
    イラディアンスキャシュを切る件ですが、シェダーの間接照明タイプをモンテカルロにしてレンダリングすると云う事でよろしいのでしょうか。
    hibiさんが上で書いている通り眠い感じ(空気感が無い)になっていました。
    モンテカルロでレンダリングしてみましたが確かにスッキリするのですがノイズが結構出ます。後は試行錯誤で自分なりの設定値を見つける事が必要なのでしょうね。
    ブログはいつも拝見しています、いつもクォリティーの高い絵を見て何で、どうして、と一人でぶつぶつ言っています、これからもブログ期待しています。
    追伸:最近忙しそうなので御自愛ください。
    Twitter:DioSpazio

    返信削除
  2. yasuさん、こんにちは。
    イラディアンスキャシュを切る件ですが、シェーダーの間接照明タイプをモンテカルロにしてもいいですし、レンダリング、大域照明の間接照明は有効の状態で、放射照度キャッシングをオフにしても同じことになります。
    モンテカルロの場合は、各ピクセルに対して計算を行いますので、ディテールはしっかり出ます。ただし精度を上げないと高周波ノイズがとれないわけです。
    このノイズが気にならないまで間接レイを上げるのは大変なので、モンテカルロはあまり実用的ではないわけです。
    また、そのためにイラディアンスキャシュがあるので、イラディアンスキャシュをうまく使えばモンテカルロに近いレンダリングは可能はずです。
    それでは、具体的にどうすればいいのかと言うと、ケースバイケースなのですべてのシーンに共通する方法はないのですが、直接光でしっかりディテールを出してやるとか、イラディアンスキャシュの放射照度評価間隔や放射照度評価密度を調整して精度を上げるとかが基本になると思います。

    返信削除
  3. hibiさん ありがとうございます。
    とりあえず前に作ったインテリアをモンテカルロにてレンダリングしています。後はイラディアンスキャシュをOnにして放射照度評価間隔や放射照度評価密度を調整していけば自分なりのポイントを見つければ良いわけですね。
    2年位前までVectorWorksでモデリングしてform・Zでレンダリングしていました、それから比べると時間もクォリティーもかなり上がった気がします。
    modoは使い始めたばかりなのでこれからもよろしくお願いします。
    Twitter:DioSpazio

    返信削除

コメントを投稿

このブログの人気の投稿

MAYAのベベルの疑問解決!

エッジベベルはコーナーを切り落としたり、丸めたりとよく使う機能です。 MAYAの場合、ベベルを起動するとビュー内にウインドが表示されすぐに操作できるので大変便利です。このウインドはベベルだけではなく、押し出しやブリッジなど他の機能でも表示されます。 しかしほとんどの場合、ベベルは実寸で適用するのでMAYAの割合でサイズを設定するのは不便だなと感じていました。 ちなみにMODOは実寸のみ、CINEMA4Dは実寸がデフォルトで割合に変更も可能。 MAYAはCINEMA4Dとは逆で割合がデフォルトで実寸での適用も可能。 実寸での適用する場合は適用時にベベルオプションウインドで入力するか、アトリビュートエディタまたはチャンネルボックスレイヤエディタで割合から絶対(実寸)に変更しますが、ビュー内に表示されるウインドでは割合での入力しかできないので不便だなと思っていました。 しかし、ウインドの右上のボックスをクリックすれば表示させる内容などをカスタマイズができるんですね。 これ、今までは知りませんでしたわぁ〜。 設定値のコピペやウインドのサイズも変更可能ですやん。 こりゃ便利だぁ。 ちなみに、MAYAのベベルはなんでデフォルトが割合やねんと思っていましたが、割合でベベルというのも使い出すと色々便利だと思うようになった今日この頃です。 MODOは、こっち方向のベベルもできるようにして欲しいなぁ〜。

数値入力

地味な話ばかり続きますが、仕事する上で大切な部分でもありますので、もうしばらくお付き合いをよろしく! 例えばオブジェクトまたはエレメントを移動する場合に決まった数値分移動すること もあれば、移動してその移動距離を取得したいこともあります。 MODOやCINEMA4Dはマニピュレータを移動させると、マニピュレータの近くに移動した数値が表示されるので、どれだけ移動したかわかります。またMODOは移動のトランスフォームの項目でもわかります。MODOはほとんどのツールに数値が表示されるし、数値を制御できるので、大変便利だと思います。 MAYAはマニピュレータを移動すると移動した数値を表示する機能は基本的には多分ありません。しかしユニバーサルマニピュレータだけは移動量だけではなくオブジェクトのサイズも表示されます。また表示されている数値を変更するとその数値分移動、サイズ、回転します。マニピュレータのハンドルをクリックすると数値入力フィールドが出てきます。 すごく多機能で「大したことできそう」感が漂いますが、オブジェクトのバウンディングボックスに対しての操作だけなので大したことはできません。あまり使われていないからか、MAYA2015はシェルフにあったはずですが、MAYA2016ではメニューからしかアクセスできまん。 ではMAYAで移動した距離を取得する方法は?と一瞬考えましたがこれぐらいのことなら少し調べればmelで書けます。とにかくどこかに表示できればいいわけですしね。とは言ってもそんなことしている暇もないので、現状はスクリプトエディタに表示されるコマンドから移動距離を確認しています。 (はい、mel書かなくても表示できちゃいました。) さて、次に移動させる数値がわかっている場合はマニピュレータで移動するよりは即数値入力が一番手っ取り早いわけです。MODOはWキーで移動ツールを起動して数値を入力してspaceキーまたはQキーで移動ツールを解除という流れになりますが、以前からこれ結構面倒な手順だなと思っております。 MAYAは数値入力で移動するにはステータスラインにある入力ラインが手っ取り早いです。 ハイパーシェードのアイコンの横にありますが、多分デフォルトでは畳んでありますので、ひっそり感はマックスです!また、見た目もかなり「大したこと...

MODO11にバージョンアップそして問題発覚!

MODO 11にバージョンアップしました。MODO 10は飛ばしたので久しぶりにバージョンアップになります。MODO 902の機能には満足していたのですが、レンダリングのスレッド数に制限があってうちの88スレッドマシンでは44スレッドしか回らないという不都合もあったし今回はバージョンアップすることにしました。 おかげさまで無事88スレッドでレンダリングすることができましたが… ん〜?なんか遅い。 サンプルファイルの9Spheresでレンダリングしてみると44スレッドのMODO 902より遅い。 そこで、自動レンダリングスレッドオフにして幾つかのスレッド数でレンダリングしてみました。 結果は、 24スレッドが32.3秒 36スレッドが28.9秒 44スレッドが28.0秒 64スレッドが37.4秒 88スレッドが32.4秒 でした。 44スレッドの28秒が一番速くて64スレッドの37.4秒が一番遅い。 これじゃ、MODO 11にバージョンアップした意味ないじゃん。 それにMODOはネットワークレンダリングもかなり遅いし、打つ手なし! まぁ、今はMODOでレンダリングすることはないんだけどね、以前のデータを速くレンダリング出来ればいいかなと思った程度なので、あまり気にしないことにしよう。