動作環境
本記事の動作環境は以下の通りです。
(2.9にアップデートしました)
項目 | 環境 |
---|---|
OS | Windows 10 |
Blender | 2.9 |
参考:https://www.youtube.com/watch?v=RgRPUlFBHH4&t=475s
#ワークフロー
道中の小技を最後に解説しているのでよければ参考ください。
- 雲平面を作る
- 雲キューブを作る
- 雲と背景に色をつける
- ライティングの調整をする
#前準備
-
以下のリンク先から雲テクスチャをダウンロードする。
https://drive.google.com/file/d/1SelXRF9VYhksPys3MTYDsSHcQ1_VQT7Y/view
-
以下のリンク先から参考画像をダウンロードする
https://drive.google.com/file/d/1dBOGF_RdogT_GgwI7y5GxtqXMB36u1vm/view -
Node Wanglerのaddonを有効にする
#雲平面をつくる
cubeをもとに以下の方法で雲平面をつくる。
(ちょっと冗長だけど、動画のとおりなので…)
-
雲シェーディングの基礎を作る
- 操作①:マテリアルを新規作成し、シェーダーエディターでプリンシプルBSDFを削除する
- 操作②:Shift + a > シェーダー > ディフューズBSDF を追加する
- 操作③:Shift + a > シェーダー > 透過BSDF を追加する
- 操作④:Shift + a > テクスチャ > 画像テクスチャを追加し、前準備でダウンロードしてきた雲テクスチャを開く
- 操作⑤:透過BSDFを選択し、Shift + Ctrl + 右クリックでシェーダーミックスを追加する
- 操作⑥:シェーダーミックスの係数入力に雲テクスチャのアルファ出力を接続する
- 操作⑦:シェーダーミックスのシェーダー出力をマテリアル出力のサーフェス入力に接続する
- 操作⑦:プロパティエディター > マテリアルプロパティ > 設定 > ブレンドモードをアルファハッシュに設定する
- 操作⑧:プロパティエディター > マテリアルプロパティ > 設定 > 影モードをアルファハッシュに設定する
-
UV展開する
-
不要な面を消す
雲キューブを作る
以下の方法で雲キューブを作る
- 配列モディファイアーを追加する
- 操作①:モディファイアープロパティ > モディファイアーを追加 > 配列で配列モディファイアーを追加する
- 操作②:モディファイアープロパティ > Array > 適合する種類 を 長さに合わせる に変更
- 操作③:モディファイアープロパティ > Array > 長さ を 2m に変更
- 操作④:モディファイアープロパティ > Array > オフセット(倍率)を無効にする
- 操作⑤:モディファイアープロパティ > Array > 一定のオフセットを有効にする
- 操作⑥:モディファイアープロパティ > Array > 距離X を0にする
- 操作⑦:モディファイアープロパティ > Array > 距離Y を0.001にする
雲の凹凸を表現するための法線マップを作成する
以下の方法で法線マップを作成する
-
メタボールを追加する※小技で解説
- 操作①:Shift + a > メタボール > ボール(上から見たときにキューブが見えない位置に配置すること)
-
メタボールを複製する
- 操作①:追加したメタボールを選択
- 操作②:Shift + d > z > 1で元のメタボールより少し上に複製
- 操作③:複製したメタボールを選択したまま Sキー > 0.3 で縮小
- 操作④:小さいメタボールを適当な位置に配置
-
メタボールの解像度を上げる
- 操作①:メタボールを選択(どっちでもいい)
- 操作②:オブジェクトデータプロパティ > メタボール > Resolution Viewport を0.02mに変更
-
法線マップをレンダリングするために画角を調整する
-
法線マップ表示にする
-
雲の凹凸を表現する
-
操作②:4つの小さいメタボールを選択して、Shift + dで複製する
-
操作③:ピポットをアクティブ要素に変更する
-
操作③:複製した4つを選択したまま、更に大きなメタボールを選択する
-
操作④:スペース + Rキー で大きなメタボール上で小さなメタボールを移動させる
-
操作⑤:大きなメタボールを選択解除して、更に小さなメタボールを複製する
-
操作⑥:操作④と⑤を繰り返したり、個別に小さなメタボールを操作したりして形を整える
- ポイント:メタボール(小)がメタボール(大)から離れてしまわないこと
-
操作⑦:オーバーレイをクリックしてキズモの表示などを消す
-
操作⑧:メタボールを選択 > オブジェクトデータプロパティ > Resolution Viewport を 0.01mに変更
-
操作⑩:画像 > 保存 で 法線マップを保存する
雲に凹凸をつける
以下の手順で雲に凹凸をつける
-
法線マップを適応する
-
太陽を模擬するためにライディングを調整する
雲の淡い輪郭を表現する
以下の方法で淡い輪郭を表現する
- テクスチャ座標を追加する
雲と背景に色をつける
以下の方法で背景と雲に色をつける
-
参考画像をインポートする
-
背景色を変更する
- 操作①:シェーダーエディターのシェーダータイプをワールドに変更する
- 操作②:カラーをスポイト機能で参考画像の空からとってくる
-
色変換方式を変更する
-
シェダ―エディターの可視性の向上のため、法線マップをグルーピングする
-
雲に色をつける
- 操作①:Shift + a > コンバーター > シェーダーからRGBへ を ディフューズBSDF ノードとシェーダーミックスノードの間に追加
- 操作②:Shift + a > コンバーター > カラーランプ をシェーダーからRGB ノードと シェーダーミックスノードの間に追加
- 操作③:カラーランプノードにカラーストップを2つ追加し、図のようにスポイト機能で色と場所を設定する
-
アンビエントオクルージョンを有効にする※小技で解説
雲を丸くする
以下の方法で雲を丸くする
-
丸要素を追加する
-
丸くする
- 操作①:テクスチャ座標のオブジェクト出力とマッピングのベクトル入力を接続する
-
可視性向上のため、フレームに格納する
- 操作①:Shift + a > レイアウト > フレーム で フレームを追加(可視性向上のため)
- 操作②:フレームを選択した状態で、Nキー > アイテム > ノード > ラベルでフレーム名を Noise に変更
- 操作③:フレームを選択した状態で、Nキー > アイテム > プロパティ > ラベルサイズ を 50 に設定
- 操作④:グラデーションテクスチャノードとマッピングノードとテクスチャ座標ノードをフレームに入れる
-
元の雲の形と掛け合わせる
-
輪郭を際立たせる
雲の揺れを表現する
以下の方法で雲を揺れを表現する
-
全体的に揺れ要素を入れる
- 操作①:シェーダーエディターでShift + a > テクスチャ > ノイズテクスチャでノイズテクスチャを追加
- 操作②:ノイズテクスチャを選択して、Ctrl + T で テクスチャ座標ノード と マッピングノードを追加
- 操作③:Shift + a > レイアウト > フレーム で フレームを追加(可視性向上のため)
- 操作④:フレームを選択した状態で、Nキー > アイテム > ノード > ラベルでフレーム名を Noise に変更
- 操作⑤:フレームを選択した状態で、Nキー > アイテム > プロパティ > ラベルサイズ を 50 に設定
- 操作⑥:ノイズテクスチャノード、マッピングノード、テクスチャ座標ノードをノイズフレームに入れる
- 操作⑦:Ctrl + Shift + 右ドラッグ(Round ShapeのグラデーションノードからNoiseフレームのノイズテクスチャ)でカラーミックスする
-
処理負荷を低減するために、配列モディファイアーの設定を変更する
- 操作①:モディファイアープロパティ > Array > 一定のオフセット > Y > 0.006mに変更する
-
揺れの程度を制御する
-
雲の正面だけ揺れをなくす
-
操作①:Shift + a > テクスチャ > グラデーションテクスチャ でグラデーションテクスチャノードを追加する
-
操作②:グラデーションテクスチャノードを選択した状態で、Ctrl + T で テクスチャ座標ノードとマッピングノードを追加する
-
操作③:効果の確認のために透過BSDFとディフューズBSDFをミックスしているシェーダーミックスの係数入力に、先程追加したグラデーションテクスチャノードの係数出力を接続する
-
操作④:テクスチャ座標ノードのオブジェクト出力をマッピングノードのベクトル入力に接続する
-
操作⑤:マッピングノードの回転 > Z を 90°に変更する
-
操作⑥:マッピングノードのスケール > X,Y,Z を 0.2に変更する
- ポイント:Shift + 左ドラッグで一度に変更できる
-
操作⑦:揺れの効果と効果を消す作用を混ぜるためにCtrl + Shift +右ドラッグ(グラデーションテクスチャノードからノイズテクスチャのカラーランプ)で2つをミックスする
-
操作⑧:カラーミックスノードのブレンドモードを追加に変更する
-
操作⑨:カラーミックスノードの係数を1にする
-
操作⑩:Round Shapeにつながるカラーランプのカラー出力をシェーダーミックスの係数入力に接続する
-
操作⑪:Shift + a > コンバーター > カラーランプ でカラーランプをNoiseのグラデーションノードとカラーミックスノードの間に追加する
-
操作⑫:カラーミックスノードのカラーストップを図のように変更する
-
雲を増やす
以下の方法で雲を増やす
- コレクションインスタンスを使用するためにオリジナルの雲のみでコレクションを作成する
- 操作①:オリジナルの雲を選択した状態で Mキー > New Collection > 名前をCloud Pieceにする
- コレクションインスタンスを使用して、雲を量産する
- 操作①:Shift + a > Collection_Instance > Cloud Piece
- 操作②:Cloud Pieceのコレクションインスタンスを Shift + D で複製
- 操作③:適宜GキーやSキー、Rキーなどを使用して、移動、拡大/縮小、回転などのトランスフォームを変更する
- 表示の向上のためにビューの設定を変更する
ライティングの調整をする
以下の方法でライティングの調整をする。
値はお好みで。
適宜、Gキー、Sキー、Rキー、Shift + D を使って、トランスフォームの変更や複製をしながら調整する。
-
法線マップの強さを小さくする
- 操作①:オリジナルの雲を選択する
- 操作②:Normal Map フレームのノーマルマップノードの強さを少し下げる。
-
淡い輪郭を調整する
- 操作②:Normal Map フレームのカラーミックスノードの係数を少し下げる
- 操作③:Normal Map フレームのノイズテクスチャノードのスケールを少し下げる
-
アンビエントオクルージョンの距離を大きくする
- 操作④:レンダープロパティ > アンビエントオクルージョン(AO)の距離を少し上げる
-
ディフューズBSDFのカラーランプを明暗がはっきりするように調整する
-
配列モディファイアーのオフセットを下げる
- 操作①:オリジナルの雲を選択する
- 操作②:モディファイアープロパティ > Array > 一定のオフセット > Yの値を0.009に下げる
-
ポイントライトを配置する
- 操作①:Shift + a > ライト > ポイント でポイントライトを追加する
- 操作②:オブジェクトデータプロパティ > Point > ライト > パワー を 10W に設定する
- 操作③:オブジェクトデータプロパティ > Point > ライト > 半径 を 0.5mに設定する
- 操作④:Gキーで雲の光を当てたい部分にライトを動かす
- 操作⑤:影をつくるために、オブジェクトデータプロパティ > Point > ライト > パワー を -10Wに設定する
- 操作⑥:Gキーで雲の影にしたい部分にライトを動かす
-
雲のみに影響を与えるライトをシェーディングで作成する
- 操作①:オリジナルのCloud Pieceを選択して、シェーディングを編集する
- 操作②:Shift + a > テクスチャ > グラデーションテクスチャ で グラデーションテクスチャを追加する
- 操作③:グラデーションテクスチャノードのグラデーションタイプを球状にする
- 操作④:グラデーションテクスチャノードを選択して、Ctrl + T でテクスチャ座標ノードとマッピングノードを追加する
- 操作⑤:可視性向上のためにShift + a > レイアウト > フレーム で フレームを追加する
- 操作⑥:フレームを選択して Nキー > アイテム > ラベル でラベルの名前を Extra Light に変更する
- 操作⑦:フレームを選択して Nキー > アイテム > ラベルサイズ で ラベルサイズを 50 に変更する
- 操作⑧:フレームの中にグラデーションテクスチャノード、マッピングノード、テクスチャ座標ノードを入れる
- 操作⑨:Extra Lightの中心を決定するために Shift + a > Empty > 十字 でEmptyを追加する
- 操作⑩:テクスチャ座標ノードのオブジェクト出力とマッピングノードのベクトル入力を接続する
- 操作⑪:テクスチャ座標ノードのオブジェクトを操作⑧で追加したEmptyに変更する
- 操作⑫:Shift + a > カラー > RGBミックス で カラーミックスをNormal Mapへ続くカラーランプと透過BSDFとミックスするシェーダーミックスノードの間に追加する
- 操作⑬:カラーミックスノードの色2入力をスポイト機能で影色に設定する
- 操作⑭:グラデーションテクスチャノードの係数出力とカラーミックスノードの係数入力を接続する
- 操作⑮:Emptyを選択してShift + dで複製する
- 操作⑯:複製したEmptyを選択してGキーで光の中心に移動する
- 操作⑰:テクスチャ座標ノード、マッピングノード、グラデーションノード、カラーミックスノードを選択してShift + d で複製する
- 操作⑱:複製したカラーミックスノードを元のカラーミックスノードの後ろに挿入する
- 操作⑲:複製したテクスチャ座標ノードのオブジェクトを複製したEmptyに変更する
- 操作⑳:複製したカラーミックスノードの色2を白色に変更する
小技
UV展開方法/ビューから投影
3Dビューポートで見えている形状のままUV展開をする。
[https://docs.blender.org/manual/ja/lates
t/modeling/meshes/editing/uv.html#project-from-view](https://docs.blender.org/manual/ja/latest/modeling/meshes/editing/uv.html#project-from-view)
- 操作①:オブジェクトを選択し、編集モードにする
- 操作②:展開したい見た目になるように表示を調整する
- 操作③:Aキーでオブジェクトの頂点を全選択
- 操作④:Uキー > ビューから投影
UVエディター/アイランドを梱包
UVエディターの画角いっぱいになるように自動でUV展開のスケールを調整してくれる機能。
https://docs.blender.org/manual/ja/latest/modeling/meshes/uv/editing.html#pack-islands
- 操作①:UVエディターでAキーでUVを全選択
- 操作②:UV > アイランドを梱包
メタボール
近づけるとくっつく不思議なオブジェクト。
操作①:3DビューポートでShift + a > メタボール > ボール で追加
###ビューポートレンダリング
3Dビューポートの表示をそのままレンダリングすることで、素早くレンダリング結果を確認できる。
https://docs.blender.org/manual/ja/latest/editors/3dview/viewport_render.html
###カラーマネージメント
レンダリングパイプラインでどのように色変換をしていくかという管理。
https://docs.blender.org/manual/ja/latest/render/color_management.html
アンビエントオクルージョン
詳細な光の表現。
https://docs.blender.org/manual/ja/latest/render/eevee/render_settings/ambient_occlusion.html
###ビュー 範囲の開始
単純にどのくらいカメラに近い位置の物体を表示しますか。という設定。
https://docs.blender.org/manual/ja/latest/editors/3dview/sidebar.html
途中で動作が重くなったら
Cloud Piece の モディファイアープロパティ > Array > 一定のオフセット > Y を0.1m に変更して操作するとよい。
レンダリングするときだけ0.006mに戻しましょう
###雲バリエーションの作り方
ジブリ風の木同様にオブジェクトカラーを利用してRGBの値からグラデーションの係数などを変えて雲バリエーションを増やすことができる。
気が向いたらこの辺を加筆する可能性あり。