レンダリング | Cycles Renderを試す 03

前回の記録: 流体シミュレーション | Cycles Renderを試す 02 Cycles Renderを試す,最終回の今回はレンダリングが主題です. 手順として,シミュレーション結果から好きなタイミングの水を選び,その水を綺麗に整形してから,よりドラマティックな画になるよう背景を作成して行きます. 最後にレンダリング設定を簡単に行って実際にレンダリングをします.

好きな瞬間を選ぶ

前回のシミュレーションによって次のようなアニメーションを得ることができました.
この中から好きな瞬間をタイムラインを動かして選んでみましょう. 私は水が注がれた直後に見せる,水のダイナミックな瞬間を選びました.
水を選択したらShift+Dで複製します. 複製した水はマウスカーソルにくっついて移動できますが,今回は同じ位置に複製したいのでEscキーを押します. インスペクタのModifierタブを見るとFluidというモディファイアがあるので,Applyをクリックして適用します.
Applyすることでタイムラインに関係無く,その瞬間の形を保持したオブジェクトとなります. 念のためCtrl+Sでセーブしておきましょう. 現状だと複製した(静止した)水と元の(シミュレーション結果の)水が重なっているので,元の水を非表示にします. アウトライナーの目とカメラアイコンをクリックして非表示にしましょう.
目のアイコンはクリックするたびに表示/非表示が切り替わります. しかし目アイコンだけだとワークスペース内での表示/非表示しか切り替わらず,レンダリング結果には表示されてしまうため,カメラアイコンも非表示にしておきます. これで好きな瞬間だけを切り出すことができました. 次は流体シミュレーションの問題点を改善して行きます.

水の形を整える

グラスオブジェクトの目アイコンをクリックして,グラスだけ非表示にしてみましょう. すると,水がギザギザしていることに気づくと思われます.
流体シミュレーションは空間を細分化して計算(シミュレート)しているため,細分化の解像度がこのように結果に現れてしまうのです. 水がゴツゴツしていては現実味がないため,スカルプチャモードにし,水の表面を滑らかにして行きましょう.
ツールパネルからブラシを選択できます.
画像のアイコン部分をクリックするとブラシ一覧が表示されます.
"F Smooth"を選択しましょう. このブラシを使うとオブジェクトの表面を滑らかに出来ます. ギザギザの気になる部分でドラッグすると表面が滑らかになります.
上の画像のように滑らかになったところで,グラスを表示させ,大きさを確認します. グラスから水がはみ出している場合もあると思います. この場合は水をスケールして小さくするか,グラスをスケールで大きくし,水がすべてグラスの中に収まるように位置も含めて修正します.
気になる方はグラスの外に飛び散っている水を消すことも出来ます. Tabキーを押し編集モードにしたらAキーを数回押してどのオブジェクトも選択されていない状況にします. Bキーを押すと範囲選択が出来ます. ドラッグで水しぶきだけを選択しましょう. Ctrl+Lを押すと選択された部分と繋がっている点すべてが選択されます. この状態でXキーを押し,"Vertices"をクリックすると,選択した水しぶきだけを削除することが出来ます.
以上でグラスと水は準備完了です. 後は背景を用意すれば素晴らしい画をレンダリング出来ることでしょう.

背景を作る

グラスと水だけでも綺麗ですが,床と背景を加える事で,よりドラマチックになります. 今回は平面の四角形を2枚用意してマテリアルを設定,それぞれを床と背景にしましょう. まずはShift+Aでオブジェクトを追加します. "Mesh > Plane"を選択します. 追加したらスケールで拡大し,床にしましょう.
次はこの平面をコピー(複製)してから90度回転させ,それを背景にします. まず先ほど追加した床(Planeオブジェクト)だけを選択し,Shift+Dを押します. これでPlaneオブジェクトが複製されます. 続けてRを押すと複製したオブジェクトを回転(Rotate)出来るようになります. 更に続けてXを押すと回転軸をX軸に固定出来ます. この状態で90と入力すると複製したオブジェクトがX軸周りに90度回転します. 正しく回転していることを確認したらEnterで決定しましょう. 後はグラスの背景になるように位置を調整して配置完了です.
上の画像の様に床と背景を設置出来たら,それぞれのマテリアルを設定して行きましょう. まずは背景オブジェクトを選択してからインスペクタのマテリアルタブを開いて"New"をクリック,マテリアルを追加します. "Diffuse BSDF"をクリックし,"Emission"へと変更し直します. "Strength"は3.0にしましょう.
これで背景が光る様になります. この結果を見やすくするため,インスペクタのワールドタブにあるSurface設定のColorを黒へと変更しましょう.
Shift+Zで現状のレンダリング結果を確認します.
狙い通り,背景が光っている様子を確認出来ました. しかし,このままではまぶし過ぎてグラスがよく見えません. そこで,背景の光り方にグラデーションをつけてみます. 今回は下にある画像(テクスチャ)を背景オブジェクトに貼り付け,光り方のグラデーションにしてみます.
上の画像はクリックするとフルサイズの物が表示されるので,ご自由にダウンロードして利用いただけます. まずは背景が選択されていることを確認してインスペクタのマテリアルタブを開きます. "Color"の欄,右端にボタンがあるので,それをクリックします.
するとメニューが表示されるので,Texture欄にある"Image Texture"を選択します.
するとマテリアルタブの"Color"が下の画像の様になります.
"Open"をクリックして,先ほどダウンロードした画像を選択しましょう.
後は"Vector"を設定するだけです. インスペクタのVector欄をクリックしましょう. するとメニューが表示されます. "Generated"を選択します.
以上で光り方にテクスチャ通りのグラデーションが付きました. 再度,レンダリング結果を確認すると次の様になっていることでしょう.
だいぶドラマチックになりました. もしも明るさが十分で無い場合は背景マテリアルの"Strength"を3.0よりも大きな数値へ変更すると良いでしょう. さて,折角なので床も少し凝ったマテリアルにしてみましょう. 床を選択したらマテリアルタブを開きます. いつも通り"New"をクリックしてマテリアルを追加します. "Diffuse BSDF"でも良いのですが,もう少し光沢感が欲しいので"Glossy BSDF"とミックスして使ってみましょう. まずはマテリアルを"Mix Shader"へと変更します. するとShaderという欄が2つ出てきます. 上の欄に"Glossy BSDF",下に"Diffuse BSDF"を選択しましょう. "Factor"という欄は2つのマテリアルの調合率です. 初期値は0.5で半分づつですが,少し光沢感が強すぎるので(好みの問題ですが),今回は0.3へ変更してみました. この数値はレンダリング結果を見ながら好みで決めてみましょう.
さて以上で床のマテリアルも設定し終えました. 最終的なレンダリング結果を見てみましょう.
床は"Diffuse BSDF"ならではのざらつき感に"Glossy BSDF"の光沢感が混ざって,グラスが程よく反射して見えます. さて,次はいよいよ最後の工程です. カメラを好みの位置にセットしてレンダリングをしてみましょう.

レンダリングする

レンダリングをするにはカメラが必要です. カメラがワークスペース内に無い場合はShift+Aで"Camera"を追加しましょう.
ワークスペースの視点を動かして好みのアングルを見つけます. 私は注がれた水が良く見え,かつダイナミックに見えるよう,グラスを少し見上げるようなアングルを選びました. 好きなアングルを見つけたら,Ctrl+Alt+Num0もしくはメニューバーより"View > Align View > Align Active Camera to View"を選択します. これでカメラが現在のアングルと全く同じ位置にセッティングされます.
Num0キーでカメラ視点と通常視点の切り替えが出来ます. カメラ視点の時に現れる四角い点線がカメラに写る範囲を示します. カメラ自体を選択してからインスペクタのカメラタブを開くとカメラの詳細な設定を確認出来ます.
"Focal Length"を変えるとカメラの画角が変化します. これが小さな値になればなるほど広い範囲が写るようになりますが,その代わり歪みが大きくなります. 逆に大きな値にすると歪みが小さくなり,写る範囲が狭くなります(所謂ズームインです). 私は52mmへ変更しました. お好みで調整してみましょう.
Focal Lengthを52mmに調整した後,少しカメラの位置を調整した画が上の画像です. カメラの位置に合わせて,床と背景のサイズにも注意しましょう. もし床や背景の端が見えるようでしたら,床や背景をスケール(拡大)します. さて,これで写真を撮る(レンダリングをする)準備が整いました. 後はレンダリング設定を行って,実際にレンダリングあるのみです. インスペクタのレンダリングタブを開きましょう.
GPUを使ってレンダリングする場合はRender設定のDeviceをGPU Computeへ変更しましょう. GPUの性能にも依りますが,基本的にはCPUよりも高速にレンダリング出来るようになります. Resolution(解像度)設定は出力画像のサイズです. HD画質(1920x1080ピクセル)がデフォルトですが,50%だと半分のサイズでしか出力されません. 今回は1920x1080ピクセルで出力したいので100%へ変更しましょう. Sampling設定のClamp DirectとIndirectを3.00へと変更します(Indirectだけでも問題ありませんが念のため). またSamplesのRenderを32へ変更しサンプル数を増やしましょう(解像度を細かくしましょう). こうすることでレンダリング結果に現れてしまう白い点(ごま塩ノイズのような点々で通称ホタル)が減ります(参考:Blender Guru). Light Path設定のBouncesで光の反射回数の上限値を設定出来ます. 理想的には無限回の反射にしたいのですが,それでは永遠にレンダリングが終わらないので,実際はもう少し現実的な数値にします. 今回はBouncesのMaxを32,DiffuseとGlossyとTransmissionを128へと変更しました.
  • Render:
    • Device: GPU Compute
  • Resolution:
    • X: 1920
    • Y: 1080
    • 100%
  • Frame Range / Frame Rate:
    • Start Frame: 1
    • End Frame: 48
    • Frame Rate: 24
  • Sampling:
    • Clamp Direct: 3.00
    • Clamp Indirect: 3.00
    • Render: 32
  • Volume Sampling:
    • Step Size: 0.05
    • Max Steps: 1024
  • Light Path:
    • Bounces Max: 32
    • Bounces Min: 3
    • Diffuse: 128
    • Glossy: 128
    • Transmission: 128
  • Performance:
    • Tiles X: 64
    • Tiles Y: 64
参考までにレンダリング設定を完了したインスペクタの画像を下に載せます.
以上で全ての設定が完了しました. レンダリングタブ上部にあるカメラボタン(Render)をクリックしてレンダリングを実行しましょう.
上の画像のようにレンダリングタブ内Performance設定のTilesに設定した大きさ(今回は64x64ピクセルの正方形)ごとに区分けされながらレンダリング(光の軌道計算)が行われます. GPUやCPUにはそれぞれ得意とするTileの大きさがあります. 適切なTileの大きさを設定することでレンダリング時間を削減することが出来ます(参考:Blender Guru). デフォルトの64x64ならばCPU,GPU関係無しにある程度速いようです. レンダリングがすべて終了したらF3キーもしくは"Image > Save As Image"でレンダリング結果を画像(デフォルトではPNG形式)として保存出来ます.
以上でBlenderのCycles Renderを用いたフォトリアルなレンダリングチュートリアルは終了です. Cycles Renderの長所は何と言ってもマテリアルを設定するだけでリアルな画を得られる所です. 本チュートリアルで紹介した内容は次のステップアップにも欠かせない,Blenderを扱う上でも基本となる知識ばかりです. Blenderの公式サイトやフォーラム,Wikiなどを参考に,CG製作に磨きをかけてみては如何でしょうか.
515071905776705744 https://www.storange.jp/2016/08/cycles-render-03.html https://www.storange.jp/2016/08/cycles-render-03.html レンダリング | Cycles Renderを試す 03 2016-08-25T20:45:00+09:00 https://www.storange.jp/2016/08/cycles-render-03.html Hideyuki Tabata 200 200 72 72