コンポジットで加工

しばらく追加していなかったので、新しいサイトのヘッダー画像をつくってみました。
t30
ついでにBlenderに搭載されてるコンポジットを紹介しようかと思います。

3Dモデル

レンダリング前の3Dモデルはこのようなかんじ。
手前にある8角錐は後ほど説明します。
t1

レンダリングするとこのようなかんじ。
8角錐には透明なマテリアルが適用してあるのでレンダリングするとうっすらと見えます。
背景透過でレンダリングして最後に青空の画像と合成します。
t2

ノードはこんなかんじ。処理が多くてノードが膨大になってしまいました。
スクリーンショットを複数とって1枚にまとめるのも一苦労。見やすさとファイルサイズを両立させたギリギリのところなので微妙に読みにくいのはごめんなさい。
node
説明を追加するとこんなかんじ。番号の順番に説明していきます。
node2

1. 背景青空色調整と背景合成

窓の映り込みと背景の空は同じ画像をつかっています。十分な解像度をもった背景画のファイルを用意しておきます。
Alpha Overノードでつないで校舎と合成しますが、空が色あせてみえるのでColor Balanceノードで青色を追加します。t4
青空を好みの位置へ配置するためにTransformノードで位置を調整します。
t3
なんということでしょう!色あせた空に鮮やかさが戻ったではありませんか。
t5

2. 窓の映り込み

t6
背景の空と同じ画像を使います。
Multiplyノードで空画像から窓部分の形を切り出します。窓のマテリアルにマテリアルインデックスを指定してあるのでID Maskノードで窓の部分を抜き出します。
t6
Blenderはグレースケール画像の白い部分がON、黒い部分がOffと認識されます。Multiplyノードで空画像からON(=白色)部分を抜き出すという作業が行われています。
t7
Transformノードで空画像を好みの位置に調整します。
t8
Alpha Overノードで校舎に合成します。
色合いが合ってないのでColor Balanceノードで調整します。窓に反射している雲が追加されただけでだいぶ雰囲気がかわりますね。
t9
映り込みは窓に反射マテリアルを適用し、カメラの後ろに映り込ませる用の画像を板ポリゴンに貼り付けて配置することでも表現できます。しかし、設定によってはレンダリングが遅くなったり、綺麗に映り込ませるために板ポリゴンの位置を調整したりと手間が多いので今回はコンポジットで映り込みを表現しています。

影を合成

窓の映り込みを合成すると左上の窓にかかるはずの影がおかしくなっていたので、影の合成を別に行います。
t11
RenderLayerの設定でPassesからShadowのチェックボックスをONにして横にあるカメラマークをOffにします。これによって影が別に出力され、画像に影が表示されなくなります。
t12
t13
Shadowソケットからはこのような画像が出力されます。
t14
この画像をRGB to BWノードでグレースケール画像に変換します。
t15
この画像をBright/Contrastノードで色調を調整します。ここでの色の濃さが影の合成度合いに影響します。
t16
窓の映り込みを合成した画像とShadowソケットからの影画像をMultiplyノードで合成します。
MultiplyノードのFacソケット(2枚の画像の合成度合いを調整する部分)に先ほどグレースケールに変換した影画像をつなぎます。窓の映り込み処理の時と同様に白色部分ほど合成され、黒色ほど合成されません。
t17
Bright/Contrastノードをいじることで影のかかり具合を調節できます。

4.サンビーム

Blender2.72で追加された新機能、Sun Beamsノード!
詳しいことはリファレンスをみていただくとして、この新機能をつかって”光が降ってくるような空気感”を追加します。
t18
最初にあった謎の8角錐。レンダリング時には透明なマテリアルのせいで見えないのになんのためにあるのか….それは光がふってくるかんじをだすためでした。
t19
この8角錐にオブジェクトインデックスが割り当てられているのでID Maskノードで以下のような画像が取得できます。
t20

このID Maskで取得した画像をSun Beamsノードに接続すると
t21
白色(=ON)の部分から光が降り注いでくる表現ができます。
このまま合成すると不自然になってしまうので、Blurノードでぼかしをいれます。画面全体へ光を拡散させるBlurノードと画面の一部に光を集中させるBlurノードの2つ設定が違うノードを使用しています。
t22
t23
微妙に違う。
t24
微妙に違う2つを合成。

t25
影の合成が完了した画像にAddノードでサンビームを合成
t26
光が当たっているわりには校舎が暗いのでサンビームを合成する前に校舎だけ色を調整します。
赤色と白色を追加しています。
t27
8角錐のみ別レイヤーでレンダリングしておけばわざわざ透明なマテリアルを適用する必要は無いのですが、レイヤー分けが面倒だったので透明マテリアルでごまかしています。サンビームの発生位置の指定にはオブジェクトを使用せずに別に自分で白黒画像を用意するという方法もありますが、自由に移動させて調整できるのでオブジェクトをサンビームの発生位置指定に利用しています。

5. 色調整

実際のコンポジットでは説明とは違い、窓映り込み合成→影合成→サンビーム合成→背景の空合成という順序でした。背景の空を合成すれば完成ですが、最後に全体の色を調整します。
t28

t27
Color Balanceノードで青色を追加します。
t29
これで少しハッキリした色調になりました。
ですが、全体的に白っぽいです。Bright/Contrastノードでコントラスト調整します。色味さらにくっきり。
t30

最後のSharpenノードはちょっと手描きのような雰囲気がでます。
t32
もっとノードの影響度を大きくするとエッジが強調されます。
t31

比較

コンポジットなしでのレンダリングと比較するとよくわかります。
t33
t30

コンポジットってむずかしいのか?

一般的な画像処理ソフトとはちがい、ノードベース(機能を持ったブロックを線でつないで加工する)のBlenderは慣れないと扱いづらいというのは確かにあります。慣れないと難しい。ですが、カメラのアングルを様々な方向に移動させることが出来る3DCGではノードベースの方が有利だと思います。「特定のオブジェクトにこのエフェクトを」といった処理ができるのでアングル変更をしても毎回レタッチし直す必要はありません。何枚もの画像をつかう動画でも同様の利点があります。何枚もレタッチしたくないですし….
結局は慣れです。YouTubeにはわかりやすい動画チュートリアル(動画だったら英語とかわからなくてもOK!)があるので、それを見ながら実際にいじるのが習得の近道だと思います。
表現の幅が遙かに広がるので是非ともコンポジットノードは使用してみて欲しいです。

広告

コメントを残す(連絡がとれるメールアドレスをメールアドレス欄に入力していただければ内容によっては直接メールアドレス宛に返信します)

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中