Blender 3.0 Beginner Tutorial - Part 06
https://www.youtube.com/watch?v=_WRUW_fs1g8&list=PLjEaoINr3zgFX8ZsChQVQsuDSjEqdWMAD&index=6
※チャプターなし
hr.icon
1. はじめに
Part06ではRendering(最終画像出力)に関する様々な設定を扱う。
https://gyazo.com/4cd497a08bb0fd84318a6ce612d03dc8
hr.icon
2. Part05のデータ準備
Part05でDonutモデリングが完成した状態とする。
Layout Workspaceに切り替えてReference画像のImage EditorはUIから外しておく。
https://gyazo.com/3819ad4a2b4c81f5f5326d9e131b5758
hr.icon
3. カメラの調整
3.1 レンダリング確認
Renderメニュー > Render Imageもしくはfn+F12(Mac)
https://gyazo.com/a4e61fd32fd86f43336640a944a8de23
Blender Renderウィンドウ(以降Renderウィンドウ)が表示される。
ドーナッツが非常に小さいことがわかる。
https://gyazo.com/13a61ffecb580067324bb690035e166c
3.2 カメラとライトの位置確認
Renderウィンドウを閉じる。
Viewメニュー > Frame AllもしくはHomeキーで全てのオブジェクトを表示する。
カメラとライトは初期位置から調整していないのでドーナッツから遠い状態にある 。
https://gyazo.com/fb972bfcc43be095b8ea0058e5bee7a7
カメラをドーナッツに近づけるにはQuar Viewでカメラ自体をGキーで移動する方法もあるが、効率的ではないので次に紹介する方法で行う。
3.3 カメラをビュー表示にスナップ
IcingまたはDonutを選択した状態でNumkey Periodを押す。
Wheel、MMBで構図を調整する。
https://gyazo.com/49a4b5b3b76c7ad069ca56366864ede0
カメラが選択された状態でCmd+OPTION+Numpad 0を押す。
もしくはViewメニュー > Align View > Align Active Camera to View
https://gyazo.com/8b19318ae34153e5d150403996785a3d
カメラがビュー表示にスナップする。
https://gyazo.com/6e0836f1f9c08e0215845a9ddfe0a9cf
3.4 カメラの表示サイズ変更
今のままでは 下図のようにドーナッツに対してカメラの表示サイズが大きすぎる。
https://gyazo.com/9a4e227f11580436e23f5c1879a71831
このままでもレンダリング画像に影響はしないが、作業しにくい場合はカメラ表示サイズを変更することができる。
Cameraを選択した状態で、Object Data Properties(カメラアイコン)のViewport DisplayのSize(0.1程度)を変更する。
https://gyazo.com/301282088c47127aa272948e927a6dca
3.5 カメラビュー表示のスケール
Numpad 0でカメラビュー表示。
Wheelでカメラ表示領域を拡大、縮小。HomeボタンでViewportにフィット。
https://gyazo.com/48c31469f2caa0b9e59140bc02716d53
3.6 カメラの移動(G)
Proportional EditingやSnapが影響するのでOFFにしておく。
下図のようにカメラ領域のラインをクリックして選択する。
Outlinerからカメラを選択してもよい。
https://gyazo.com/5cc54830873a06b0b2cd2a95cdd620e1
Gキーをクリック後、マウス移動でカメラ上下左右移動、左クリックで確定、右クリックでキャンセル。
移動量が大きい場合はSHIFTキーでゆっくり移動。
https://gyazo.com/706821b8f1355fba2d0b8f47f69eb5fb
上図ではUI分割して、左にカメラビュー、右にパースペクティブビュー表示。
3.7 カメラの回転(R)
Proportional EditingやSnapが影響するのでOFFにしておく。
Rキーでカメラを回転。
https://gyazo.com/0ef490bfa28a8ea8cde081df31eb72ce
3.8 カメラの前後トラッキング(G+MMB or G+Z+Z)
Gキーをクリック後、MMBドラッグでカメラ前後トラッキング。
Proportional EditingやSnapが影響するのでOFFにしておく。
ONにしたままでも、Gキーの後、Zキーを2回クリックしてマウスを動かせば可能。
https://gyazo.com/dbe50ad83c2edf303c74dcb340e10eec
参考
3.9 Camera to View
NキーでSide Barを表示する。
Viewタブ > View Lock > Camera to Viewにチェックを入れる。
https://gyazo.com/af1e280415afa42884a2f1f6ad66b0e6
この後のビューの回転、スケール、移動の操作は相対的にカメラの操作に反映される。
他の3Dソフトウェア(3dsmax等)の操作感に近い。
上図の際、分割した別のViewportではViewの設定が引き継がれていないことがわかる。
参考
3.10 レンダリング
Renderメニュー > Render Image(fn+F12)でレンダリング。
https://gyazo.com/5a45ab6984b7035e0863f4bb308904a0
hr.icon
4. ライトの調整
4.1 Planeの作成
SHIFT+A > Mesh > Plane
https://gyazo.com/39e42572ab91de582d87397f8cde07ef
https://gyazo.com/0b4dca443118924b188e38f74f3b3646
4.2 DonutをPlane上に移動
Vewportを横からの視点(下図ではFront)に切り替える。
SHIFTキーを押しながらIcingとDonutを2つとも選択する。
Gキー、Zキーを連続して押す。Plane(原点のXY平面)上になるよう移動する。
https://gyazo.com/aa0e1147552fa9e9523f79c50193c256
4.3 Planeの縮小
SキーでPlaneを若干小さくする。
https://gyazo.com/6c4d0501239b96b26102dd7ff957011c
4.4 ライト位置の確認
Viewメニュー > Frame All(Homeキー)で全てのオブジェクトを表示する。
ライトが遠くにあることが確認できる。
https://gyazo.com/5a12f26383b251a18e98ba404def1a62
4.5 ライトを原点に移動(Clear Location)
ライトを選択して、メニューからObjet > Clear > Location(OPTION+G)
ライトの位置情報がクリアされて原点に移動する。
https://gyazo.com/6a37ab8259d41321a630242ca62eb04c
4.6 ライトの移動
ライトを選択してGキーを押す。
カメラから見て左側(任意)に移動する。必要に応じて4画面で調整してもよい。
https://gyazo.com/019b7842d799fa99a1641727fdae61c9
4.7 レンダリング
Render > Render Image(fn+F12)
明るすぎて白飛びしている。
https://gyazo.com/5b4a15ffe0e60fea862366699c195891
4.8 Viewport Shading: Rendered
4.4 レンダリングされた状態を同じようにテクスチャや照明効果が反映された状態で作業を行うことができる。
Viewport Shadingアイコンから変更
https://gyazo.com/c4717a57f8ed1a27f4d53047d965ccd8
Pie Shading Menu(Zキー)から変更
https://gyazo.com/aaa3e084af069dc666fe300cf48a0a30
Viewportに照明効果(Eevee)が反映される。
https://gyazo.com/d39e4fbfda07136361340ed9d4642db1
4.9 ライトの明るさの調整
Lightを選択している状態でObject Data Properties > Light > Powerを20W程度(白トビしない程度)に変更する。
https://gyazo.com/6dd2f904627cee9c8282aa8eb0ebba19
https://gyazo.com/fff478bf6687dd8d58c72b92a94bb2d1
hr.icon
5. Viewport Shading
5.1 アイコンから切り替え
https://gyazo.com/da24a9ee555bacc932b93495aebff87a
5.2 Pie Shading Menuで切り替え
Zキーを押すとカーソル周囲にPie Shading Menuが表示される。
Pieメニューはカーソルを少しずらせばモードを切り替えることができる。無理にモード表示までカーソル移動する必要はない。
https://gyazo.com/7a49644ccf2765962e6cc4d10d2e3734
5.3 Wireframe
https://gyazo.com/07badb4a1d4b3cffeb5a41f487cc6f67
5.4 Solid
Workbenchによるレンダリング画像。テクスチャ表示も可能。
https://gyazo.com/a841547b47aaead9e8feb152a4b7677a
5.5 Material Preview
初期設定ではHRD/HDRIマップをもとに照明効果を生成している。
照明設定を行っていない時よりもMaterial Previewの方が綺麗に表示されるのはHDRIの効果によるもの。詳細は6. HDRIで解説。
https://gyazo.com/d7d6c9a14ef0f4ac69ba5b6a4d92e38f
5.6 Rendered
初期設定ではEeveeによるレンダリング画像。
Render PropertiesからEevee/ Workbench / Cyclesに切り替え可能。
https://gyazo.com/6e7dcea8253877488c4d41285f859275
hr.icon
6. HDRIとは(紹介のみ)
6.1 mixamoキャラクターの準備
まだドーナッツにマテリアルを割り当てていないのでHDRIの効果を実感できない。
ここではmixamoキャラクターを利用して実験する。
以下の手順で準備する。
1. mixamoからキャラクターFBXデータをダウンロード
2. Blenderへ読み込む
3. 若干拡大(任意)
4. Bonesを非表示
5. Viewport Shading:Material Preview(初期状態はHDRI表示)
https://gyazo.com/40a32212c07ddd87c022101cad9b165c
下図左がWorkbenchでテクスチャのみ貼り付けた画像、下図右がHDRIでのEeveeレンダリング画像。
https://gyazo.com/c6fefb017a3b77cd01113b4b89198de3
6.2 HDRI
HDRI = High Dynamic Range Image、HDR画像とも呼ばれる。
高いダイナミックレンジ(輝度幅)をもつ360度画像。
一般的な画像は8bitで構成されるが、HDRIは16bitや32bitで構成されるため明るさや色の情報量が多い。
https://gyazo.com/09cd410d7305367afe0a38699e8c95e2
3DCGでは光と影を計算によってシミュレーションするだけでなく、HDRIのような画像を利用して環境光を表現するImage Based Lighting(Wiki)という手法がある。例えば上図のような複雑な光をCG上で作成することが難しいためHDRI画像を元にドーム状に投影して光の計算を行う(下図Shading Workspace)。 HDRIを使えば、軽い処理で現実世界の照明効果を加えることができる。
https://gyazo.com/58ba02bf98baef5cf8b1a12cce87244e
HDRIでは画像をベースとした擬似的な光の再現であり、CG内で光を計算しているわけではないので影を作成することはできない。その場合は、CG上ののライトと組み合わせて利用する。
https://gyazo.com/10a367a2f9b8add7e4b63c59c790e0a0
HDRIを自分で準備するにはHDRI撮影できるカメラとある程度の知識が必要。
有償/無償で多くのHDRIが公開されているので、それを利用することもできる。
https://gyazo.com/db7a89b91b417cf4c1e45c28b20abf5e
参考
6.3 HDRIの変更、回転
Viewport ShadingメニューからHDRIプレビューアイコンをクリックして変更することができる。
https://gyazo.com/40ab4c3a22bef1939ff8b6367b38ae1d
下図のRotationを左右にドラッグすることで、HDRI投影を回転させて照明の回り込みを確認することができる。
照明を動かすことで、照明効果を確認する用途。
https://gyazo.com/91ef6cb9b992d67c3a0b2b23f25981ad
6.4 HDRI投影画像の表示
Viewport ShadingのメニューからWorld Opacity(不透明度)を上げることで背景にHDRI画像を表示することができる。
Shading Workspaceでは初期状態でWorld Opacity: 1.0、Blur: 0.5となっている。
https://gyazo.com/4f7c44d7445166c87db4b540bab95925
下図上はHDRI非表示の3パターン。下図はHDRI表示。
HDRIを元に照明効果が表現されていることがわかる。
https://gyazo.com/914db00e9cde9544dae7a5ecabf68c83
6.5 Shading Workspace(紹介のみ)
Shading Workspaceでは、マテリアルをノードエディター(Shader Editor)で作成することができる。
https://gyazo.com/77a8d7ce87f8940553dfb5624ead51db
参考
hr.icon
7. レンダリングエンジン
7.1 Viewport Shading: Renderedに設定
Viewport Shading: Renderedに設定して作業を進める。
https://gyazo.com/db36995a9298b4322ebd9ae0b2bcaa5e
Renderedモードではレンダリングエンジンによってレンダリングされた画像を表示している。Blenderでは複数のレンダリングエンジンが搭載されており、レンダリングエンジンによって処理速度や陰影の処理が異なって見える。
7.2 Blenderに搭載されているレンダリングエンジン
7.2.1 レンダリングエンジンの変更
BlenderにはEevee、Cycles、Workbenchの3つのレンダリングエンジンが搭載されている。
Render Properties > Scene > Render Engineのプルダウンリストで切り替える。
https://gyazo.com/dae970636a9949bf348036fa2098ecad
7.2.1 Eevee
Eevee is a physically based realtime renderer.
ゲームで利用されるレンダリングエンジンと同様にラスタライズ法と呼ばれる手法により、高速レンダリング(=リアルタイムレンダリング)を実現している
陰影処理など表現に限界がある
モデリングやアニメーション制作時のプレビュー用
Viewport Shading: Material Previewの時のレンダリングエンジンでもある(初期状態ではHDRIがON)
https://gyazo.com/19a395cc5ddabb6e30771bed69b9e219
7.2.2 Cycles
Cycles is a physically based path tracer.
最終画像出力用
パストレーシング法
PBR(Physically-Based Rendering、物理ベースレンダリング)が可能
参考
https://gyazo.com/7c85611555525777f58bd64307b4973e
7.2.3 Workbench
Workbench is designed for layout, modeling and previews.
主にモデリングやプレビュー用
テクスチャ表示も可能
Viewport Shading: Solidのレンダリング用
https://gyazo.com/79e382de86188ec2d78ab9f68ceadb83
7.3 レンダリングエンジンとは
3DCGの世界ではArnold、Cycles、Redshift等、様々なレンダリングエンジンがある。3DCGソフトウェアに最初から搭載されているレンダリングエンジンや外部の3rdparty製レンダリングエンジンを使う場合も多い。例えばRedshiftは、Cinema 4D、Maya、3dsmax、Blender、Houdiniのように複数の3Dソフトウェアに対応している。 https://www.youtube.com/watch?v=myg-VbapLno&t=20s
7.4 クラウドレンダリング
近年ではレンダリングのみを行うクラウドレンダリングサービスが登場している。クラウドレンダリングやリモートデスクトップを組み合わせることで、ネット接続さえあれば外出先でも非力なノートPCで3DCG映像制作が行える環境が整いつつある。
参考
hr.icon
8. EeveeとCyclesの違い
8.1 レンダリング方式の違い
3DCGにおいて光の計算が大きな計算負荷となる。そのため各レンダリング方式ではこの光に関する計算方式に違いがある。
Eevee:ラスタライズ法
ラスタライズ法では、光のシミュレーションを別の手法でごまかすことで高速化を実現している
Viewport上のプレビュー用の位置付け
Cycles:パストレーシング法
パストレーシング法では、光のシミュレーションをある程度省略しながら正しく行うことでリアリティのある表現を可能にしている
最終出力用
Eeveeはリアルタイムレンダリングとも呼ばれるが、ひと昔前のGPU(グラフィック処理専用プロセッサ)ではリアルタイム処理は不可能であった。PCに搭載されているGPUの処理速度が向上したことでリアルタイム(1秒?以下)に処理できるようになった。GPUがより高速化すれば複雑な光の計算でもリアルタイムに近づいていく。高速な計算アルゴリズムの開発と高速なGPUの開発がレンダリングを支えている。
参考
8.2 Viewport Renderのみで比較
Viewport Shading: Renderedに設定したままで、Render Engineを切り替えて比較する。
https://gyazo.com/dae970636a9949bf348036fa2098ecad
8.3 処理速度の比較
Eeveeでは一瞬で表示されるのと比較して、Cyclesでは処理に時間を要する(PC環境による)。
Cyclesは下図右の紫枠がRendering Doneになったときがレンダリング終了(設定によって画質や処理時間は変わる)。
レンダリングの設定によって画質や処理時間が大きく変わるので、ここでの描画はあくまでViewport上の処理の軽い初期設定の結果画像である。BlenderではViewport(プレビュー)とRender(最終画像出力)の設定を分けることができる。
https://gyazo.com/6b200a67f87930bf0f00e4767ddc2fc9
8.4 ノイズの比較
下図(上図右をアップしたもの)では、陰影の描写品質は除いて、Cyclesの方がノイズが高いことがわかる。
https://gyazo.com/48b5b73cb3bd7059acf7a14588e12977
ViewportのプレビューではNoise Threshold(ノイズの閾値)が0.1に設定されているため、ノイズが高い状態でレンダリングが終了する。RenderのNoise Thresholdは0.01なのでノイズが少ないがレンダリング時間は長くなる。
https://gyazo.com/6ac53a4a650ff9ce54520e3433c8d022
PBR及びパストレーシング法では、その計算プロセスでノイズが生まれやすい。ノイズを軽減するには、後述のノイズリダクションを行うことで対応する。Cyclesだけでも長く時間レンダリングを行えばノイズは軽減するが、レンダリング時間を短くしてノイズリダクションを行うことでも画質を担保できることから、ノイズリダクションを行うことが多い。
8.5 影の比較
上図でも、Eeveeの影がおかしいことがわかる。Eeveeでは光の計算を擬似的な手法で行うため、特に影の表現が弱い。設定しだいで調整は可能。
https://gyazo.com/1ca4b31879d6dd740b0c81f6d3cf336f
参考
hr.icon
9. GPU設定(チュートリアル映像 8:20〜10:15)※授業では扱わない
手持ちのPCでGPUを搭載している場合はGPUレンダリングを有効にすることができる。
現時点ではWindowsのGPUを搭載しているPCのみと捉えたほうがよい。M1 Macでも対応し始めているが未検証。AMD搭載のIntel Macではフリーズする報告がある。
https://gyazo.com/6e8eeb677efbc042c0969ea8a06ddde5
参考
CPUとGPUの違いをわかりやすく実験した映像。
https://www.youtube.com/watch?v=-P28LKWTzrI
hr.icon
10. Eeveeの設定調整
10.1 Eeveeの限界と設定による改善
Eeveeは光や影の計算を省略することでリアルタイム性を実現しているレンダラーである。Eeveeの初期設定の状態では特に影の表現がCyclesと異なる部分が多いが、Eeveeのパラメータを変更することで処理速度を維持しながらCyclesの表現力に近づけることができる。
参考
10.2 Viewport Shading: Renderedに設定
Viewport Shading: Renderedに設定して作業を進める。
https://gyazo.com/db36995a9298b4322ebd9ae0b2bcaa5e
10.3 影の状態の確認
Render Engine:はEeveeに設定。
Eeveeの影はFake Shadowなのでドーナッツの穴の影があり得ない状態で表示されている。
https://gyazo.com/3e126691e5e36a177633a88a5b42ef69
Lightを選択してObject Data PropertiesのShadow > Biasを可能な限りゼロ(0.001)に近づける。
影の穴が塞がる。
https://gyazo.com/56b6d403786a98249af1b553831b12b0
10.4 Ambient Occlusion
Ambient Occlusionはシーン内の環境光が遮られているかどうかで陰影を表現する機能。CyclesではAmbient Occlusionが設定なしで有効だが、EeveeはOffになっている。そのため、Ambient OcclusionがOFFのEeveeでは下図左のように影の濃淡がない。Cyclesでは濃淡のある自然な影の表現となっている。
https://gyazo.com/cfa0716d3d7810e2f8c8bb151d3edfa1
EeveeでもAmbient Occlusionを有効にすることで、影の濃淡を表現することができる。
https://gyazo.com/9734d825dc94d8537589f580a2820915
参考
10.5. Screen Space Reflections
Screen Space Reflections(SSS)は光の反射をシミュレーション機能。
https://gyazo.com/c2ae46cd832f2c1b60178302ee124336
参考
10.6 まとめ
Eeveeの初期設定では光の表現力が低い状態だが、これまでの設定(下記)を行うことである程度Cyclesに近づけることができる。
LightのShadow > Biasを0.001
Ambient Occlusion: ON
Screen Space Reflections: ON
hr.icon
11. ViewportでのEeveeとCyclesの住み分け
11.1 はじめに
これまでの方法では、Viewport: Renderdにした上でRender PropertiesのRender EngineをEeveeもしくはCyclesに切り替えて比較していた。
ここから先は、以下のようにレンダリングエンジンを使い分けることができる設定を紹介する。
Viewport Shading: Rendered → Cycles
Viewport Shading: Material Preview → Eevee
11.2 Render EngineをCyclesに設定
Render PropertiesのRender EngineをCyclesに設定する。
https://gyazo.com/2c9aeb8ca17c06f476073f85cdda15b5
Viewport Shading: RenderedでCyclesによるレンダリング表示であることを確認する。Render Enigneで選択したレンダリングエンジンは、Viewport Shading: RenderedとRender Imageの両方に適用されることを理解しておく。
https://gyazo.com/40c47a05a24523eb1977c99626b0afc0
11.3. Material Previewオプションの設定
Viewport Shading: Material Previewに切り替える。
https://gyazo.com/6c6b1ad8c4ba8d630b11b77429a8dea0
Viewport ShadingオプションのScene LightとScene Worldにチェックを入れる。
https://gyazo.com/1c53b4ca0c4ea5b5178517150a6f5323
Material PreviewのレンダリングエンジンにはEeveeが利用されているが、初期設定ではMaterial PreviewオプションにScene LightとScene Worldのチェックが外れているためHDRIでの描画となっている。両方にチェックを入れることでにEeveeの最終出力画像と同じ表示を行うことができる。
https://gyazo.com/b8ee82a573a80d0b43de14b981d9b155
ここまでの設定により、Material PreviewではEevee、RenderedもしくはRender ImageではCyclesとして比較することができる。
参考
カメラビューのカメラ領域のみレンダリングを行う設定も可能。Output PropertiesのScene > Format > Render Regionにチェックを入れる。
hr.icon
12. レンダリング出力画像による比較
※チュートリアルの方法とは異なる
12.1 はじめに
これまでは3D Viewport上でEeveeとCyclesを比較してきたが、ここではRender Image(最終出力画像)での比較方法を紹介する。
https://gyazo.com/9c6e38e9417fce7870b2f1b7dd7e69c6
12.2 実験PC環境
この講義ノートは以下の環境で作成している。
古いPCなので、最新のPCを利用している場合は処理速度は早いと思われる。
iMac(Retina 5k, 27-inch, Late 2015)
3.2GHz クアッドコアIntel Core i5
24GBメモリ
AMD Radeon R9 M380 2GB ※CPUレンダリングのみ利用
12.3 出力解像度の変更
Cyclesは設定によってレンダリング時間が長くなる。今回は実験なので出力解像度を下げることでレンダリング時間を短くする。
初期設定:1920 x 1080(1080p)
中画質:1280 x 720(720p)
低画質:640 x 360
今回は中画質(任意)で設定する。
Resolution XとYに直接数値入力するか、Formatの右上三本線からプリセットHDTV 720pを選択する。
https://gyazo.com/518d2061d6b79085e22c48ea16916183
参考
12.4 レンダリング
Render EngineをCyclesに設定した状態で、Renderメニュー > Render Image(fn+F12)でレンダリング開始。
https://gyazo.com/245d0d247fee67803b3647628e4dc233
紫枠部分にレンダリング所要時間が表示される。
下図では2分43秒程度。画質を落としてもEeveeと比較して長いことがわかる。
https://gyazo.com/60bddd5784587aca928051289b54ecaa
12.5 レンダリングの停止
ESCキーを押す。Cyclesでは設定しだいでレンダリング時間が意図せず長くなってしまう場合もある。
今回は実験なので途中で止めることも多い。レンダリングはバックグラウンドで行われるので、他の作業をしていてもレンダリングが進行中の時もあるので注意。
レンダリング中かどうははレンダーウィンドウ左上の表示で判断できる。
レンダリング進行中の表示
https://gyazo.com/9f100be9e31bd0eb358379e659c05b76
レンダリング停止後の表示
https://gyazo.com/ad5d3adfffd0ce83512560479d199111
12.6 レンダリングウィンドウの表示
レンダリングを開始すると自動的に別ウィンドウとしてレンダリングウィンドウ(Blender Render名称)が表示される。
https://gyazo.com/254088d6dcd76fa30ef7a887cd61810f
メインウィンドウの後ろになった場合は、WindowメニューのBlender Renderをクリックする。
https://gyazo.com/80fcdafccf93568cb3004a349436a4df
レンダリングウィンドウを閉じた後に、レンダリング結果を表示させたい場合はRenderメニュー > View Renderをクリックする。なお、レンダリング途中でレンダリングウィンドウ閉じた場合は、レンダリング停止となる。
https://gyazo.com/8e65cf89632be4d8737433d4fa97868a
12.7 Slotとは
レンダリングした画像はSlotに格納されており、初回動作時はSlot1に格納されている。
Slotはバッファに格納されているため、Blenderを終了した時点で削除される。
https://gyazo.com/0f8512b08a42b7166c5d6bb20d476105
12.8 Slot 2の利用
下図のプルダウンメニューからSlot 2に切り替える。
https://gyazo.com/792442d7b651c0fb08bf24ff8ae3ae7d
Slot2は空の状態。
https://gyazo.com/f9f001426413bfb19abba22d5d294ffe
Render EngineをEeveeに切り替えてRender Image(F12)でレンダリングする。
https://gyazo.com/9236d05a5aa0fdd6bc32e8d46435995d
Slot 2にEeveeでのレンダリング画像が格納される。
この時、Render Windowを閉じていてもSlot 2に切り替わったままの状態になる。
https://gyazo.com/6b23109f1d4f77f421924f06edabf222
12.9 Slot切り替え
Jキーで次のSlotに切り替え、Option+Jで戻る。
2 SlotだけならJキーを叩き続けることで比較できる。
https://gyazo.com/9c6e38e9417fce7870b2f1b7dd7e69c6
レンダリング画像とViewportの画像では下図のように設定が異なることを理解しておく。
Eevee、Cyclesそれぞれレンダリング画像の方が画質が高く設定されている。
https://gyazo.com/b5f668e053ce06fba58e911882028e6f
12.10 Slotに格納した画像のクリア
各Workspace同様にRender WindowでもNキーを押してSidebarを表示できる。
https://gyazo.com/16ea56c1962d28c6a7e7c0593a4a3cf4
Imageタブでは各Slotに関する操作を行うことができる。
下図☓をクリックして指定のSlotの画像をクリアすることができる。
https://gyazo.com/5c574bc0ec0fa7441b98bb3f49c98e06
12.11 Slotの追加と削除、名称変更
下図の+ーでSlotの追加と削除、Render Slotsの名称をダブルクリックして名称変更を行うことができる。
https://gyazo.com/a7b6ddfe141527321192eb9e345e652a
hr.icon
12. Material(質感設定)
12.1 IcingにMaterial追加
Icingオブジェクトを選択して、Material Propertiesを表示する。
https://gyazo.com/bfad10bebc53626a7e36a1b656791115
PC画面が狭い場合はアイコンが表示されていない場合があるので、Propertiesアイコンの列(下図紫枠)でマウスホイールを回して表示させる。
https://gyazo.com/c3f7d61ba22455850d3f628ac606ff9c
Newをクリックする。
https://gyazo.com/38d710efe3b2cb3dfac31dcdc9baa546
新規Materialが追加される。
https://gyazo.com/b73127e3760335d0883e8570f5eac394
Materialには自動的に名称(初期値は「Material」)が設定される。増える毎に「Material.002」のように連番の名称が設定される。大きなプロジェクトではMaterial名称はわかりやすく設定し直した方がよい。
12.2 Materialとは
Materialは質感を構成するための情報が格納されたプリセットであり、シェーダーとテクスチャで構成される。
シェーダーは陰影を描画するアルゴリズムであり、作品表現に適したシェーダーを選択する必要がある。
テクスチャは模様の元となる画像。今回は利用しない。
https://gyazo.com/ffdaa937e12dd8aee9e145d392b7f66a
SurfaceシェーダーとVolume シェーダー
Blenderで利用するシェーダーはSurfaceシェーダーとVolumeシェーダーに分けられる。
SurfaceおよびVolumeシェーダーにはさらに多くの種類が存在する。
https://gyazo.com/1d59333f57fee381888b13372762f44e
BlenderではSurfaceシェーダーの初期値としてPrinciple BSDFシェーダーが設定される。
https://gyazo.com/012efb23be468e392e017ec6a7ae73ac
Volumeシェーダーには何も割り当てられていない。Volumeシェーダーは煙や霧、水を表現する場合に用いる。
https://gyazo.com/8e269b3cc54a432c362137e686ba6c6a
参考
12.3 Principled BSDF
2012年にDisneyが発表したPhysically-Based Rendering(PBR)シェーダーのPrincipled BRDFに基づいたBlender用シェーダー。Substance Painter、Render Man、Unreal Enegineとも互換性がある。PBRは現在のスタンダードなレンダリング技術であり、PBRに対応したシェーダーを利用する必要がある。
参考
Principle BSDF含めてシェーダーには様々パラメータが準備されており、パラメータの値を変更することでオブジェクトの質感を変更することができる。
https://gyazo.com/58f1f9209ecb92616620eea3c14ad40e
参考
12.4 Base Color
Surface > Base Colorの下図紫枠をクリックして、カラーサークルから淡いピンク色(任意)を設定する。
https://gyazo.com/55c6d6886ede3de575304709e105c5bf
12.5 Roughness(粗さ)
Roughnessを0.15程度に下げて光沢度をあげる。
ビューを回転させて光の反射の状態を確認しながら行うと質感の変化がわかりやすい。
https://gyazo.com/f59d3377d564cc693b3358d39468e023
12.6 DonutにMaterial設定
Donutオブジェクトを選択して、Materialを追加してBase Colorに黄土色っぽく設定する。
カラーホイールではH(Hue、色合い)とS(Saturation、彩度)は変更できるが、明るさを変更する場合はカラーホイール右側のグレースケールバーもしくはV(Value、明度)の値を変更する。
https://gyazo.com/82bf7b84e5207669c0be2d491b495987
12.7 PlaneにMaterial設定
PlaneにもIcing同様にMaterialを追加して、Base Colorにピンク色(任意)を設定する。
https://gyazo.com/2bafda3ffc3713d770f6449d3ebcaa74
12.8 Render Imageで確認
Cyclesでレンダリング。数分かかるので途中で停止してよい。
https://gyazo.com/773c1aec9cdadbed56a2d61c9c0034f4
hr.icon
13. Cyclesのレンダリング時間削減
13.1 Max Samples、ViewportとRenderの2つの設定
Cyclesにおけるサンプル数とは、カメラに入ってくる光線(レイ)を集める回数。レンダリング中にViewport左上に処理過程が表示されている。このMax Samples(最大サンプル数)を小さく設定することで、レンダリング時間を短くすることができる。一方、ノイズが大きくなるので、後述のDenoiserによりノイズを削減する。
Viewportでは処理を軽い設定として、Renderingでは高画質で重い処理の設定として2つの設定で分けることができる。
今回は以下のように設定を変更する。
Viewport > Max Samples 1024(初期設定)→ 100
Render > Max Samaples 4096(初期設定)→ 100
https://gyazo.com/cf5b26d60dae12b658f0a1f0bfd682c8
参考
13.2 Denoiser
ViewportとRenderともにDenoiserにチェックを入れて有効にする。
https://gyazo.com/e5bb39c92c330f880bb23faff530f49d
レンダリング開始直後からDenoiserを利用するとレンダリング時間が長くなるので、一定サンプル数以後にDenoiserを開始した方がよい。
Viewport > Denoise > Start Sampleを50に設定する。Start SampleはViewportのみの設定。
https://gyazo.com/37cfce599aa3e4a182c5146f42464c30
Viewport: Renderedにして、Sample数50以上でDenoiserが有効になり、レンダリング時間が早くなっていることを確認する。
https://gyazo.com/f3d3e690557f06688e033d31e0e87c4a
Render Imageでも1分以内でレンダリングが完了して、ノイズも綺麗なことを確認する。
https://gyazo.com/9cfdd89fb7adb6b3871a64163cef5a6a
下図はMax Sampleが4096(初期値)、Denoiser: OFFのレンダリング画像。上図と比較してもほとんど違いがわからない。レンダリング時間は2分41秒であり3倍程度かかっている。
https://gyazo.com/e933c33267c706cb612de46e9e9e747d
参考
hr.icon
14. レンダリング画像の保存(課題提出)
2024年度はここで一旦提出
Render WindowのImage > Saveでレンダリング画像を保存できる。
保存した画像をScrapboxにアップして課題提出完了。
https://gyazo.com/1ffeb2ec257a4a0a88bd092e99fe518c
hr.icon
15. Subsurface(紹介程度)
15.1 Subsurface Scatteringとは
Subsurface=Subsurface Scattering(SSS、表面下散乱)は、下図のように人間の肌や牛乳のように完全に不透明ではない物質の中で光が内部散乱している状態をシミュレーションする機能。
https://gyazo.com/baa9536c711602b2c8c5fe504b5b776d
人間の耳や肌の表現にも利用される。
https://gyazo.com/e71fd559434e42e958e0fd9cd75491dc
https://gyazo.com/eb635d90c3d489a65f970711abf41a8e
参考
15.2 IcingにSubsurface Scatteringを設定
ドーナッツのIcingも不透明ペンキのようなものではなく、若干の透過性を有している。
Icingを選択して、MaterialのSubsurface: 0.2に設定する。
https://gyazo.com/2bb54afdb80f6f73d59ffe926e3eff23
※チュートリアル映像では20:00頃で再調整している
15.3 Subsurface Radius
Subsurface Radius=散乱平均距離でRGBチャネルに個別に設定される。
「光がサーフェスの下を散乱する平均距離。半径が大きいほど、光が影に流れ込み、オブジェクトを通過するため、柔らかな外観になります。」(公式マニュアル解説)。
ここでは以下に設定する。
Subsurface Radius:
R channel: 0.02
G channel: 0.02
B channel: 0.02
複数の入力フォームをドラッグすることで一括入力も可能。
https://gyazo.com/c618e22dcb6a0e427578ac3936c5f140
参考
Subsurface Scattering含めてマテリアルの設定は複雑になるので、Shader Editor(下図はShading Workspace)で設定することの方が多い。
https://gyazo.com/576426757e5a93e0a07251b0e9a8faa0
15.4 Subsurface Colorの設定
Base ColorからSubsurface Colorへドラックアンドドロップして色をコピーする。
https://gyazo.com/f7840af0690c4c442665a6b1468acb01
Subsurface Colorは若干濃いピンクへ変更する。
https://gyazo.com/75e68bd1f9909579019126d85a514bc5
15.6 レンダリング画像の比較
下図はSSSのONとOFFの比較。Max Samplesは100、DenoiserはONの状態。
https://gyazo.com/9912d57c1aced2abc6e1419ec9523e77
この時点では質感の違いがわかりにくい。照明の追加や位置調整、カメラの動きや他のオブジェクト(テーブル柄等)も加えることで質感の違いがわかりやすくなるかも。
hr.icon