サイトアイコン ほろほろりドットコム

[Blender 2.8] 桜の木メイキング [アドオンを使ったモデリング]

[Blender 2.8] 桜の木 メイキング [アドオンを使ったモデリング]

今回の記事は、以前の記事でご紹介しました『Sapling Tree Gen』という『追加カーブ(Add Curve)』系のアドオンを使用して、桜の木を作成する方法をご紹介したいと思います。

『Sapling Tree Gen』については、↓の記事にて詳しく取り扱わせていただきました。

今回作成するものは、最終的には↓のようなものを目指します(どうしても重くなってしまうので、PCのスペックに合わせて簡略化してください)

https://horohorori.com/wp-content/uploads/2020/03/0001-0250_animation-speed_0_30_overall-wind-strength_0_30_wind-gust-fequency_0_40.mkv

今回の記事は初心者さんには向かないと思います。そういった場合、「モデリングの超初心者」という方向けの記事を過去に執筆させていただいておりますので、よろしければそちらをご覧ください。

※2020年3月30日 画像の追加、加筆修正を行いました。

目次

『Sapling Tree Gen』について

作成する前にまずは『Sapling Tree Gen』というアドオンについて軽くご紹介します。

『Sapling Tree Gen』は、「木」のモデルを作成するのに特化した『追加カーブ(Add Curve)』系のアドオンです。

※ちなみに、『アドオン(Add-ons)』とは、扱うモデリングの系統を絞ってそれだけに特化させた「モデリング補助ツール」、という感じのものです。

カーブオブジェクトを元に、太さや分岐(枝分かれ)の方法、葉の付け方、アニメーションや、それを実現するためのアーマチュアの設定を、テンプレート化された各種別の項目への数値等の入力によって、簡単に「木」のモデリングが出来る機能となっております。

ちなみに『Sapling Tree Gen』の設定項目は以下の全8つの分類されます。

  • [ジオメトリ(Geometry)] …全体的な形状に関する設定
  • [Branch Radius] …枝部分の半径に関する設定
  • [Branch Splitting] …枝分かれの設定
  • [Branch Growth] …枝の成長設定
  • [Pruning] …枝の剪定設定
  • [Leaves] …付属させる「葉」用のメッシュオブジェクトの設定
  • [アーマチュア(Armature)] …アーマチュアオブジェクトに関する設定
  • [アニメーション(Animation)] …アニメーション化設定

初見では、各種設定項目の多さに戸惑われるかもしれませんが、落ち着いて見ていけばどのような事をしたい場合にどこを触れば良いのか、ちゃんと分類されていますので、なんとなく分かるかと思います。

早速、使ってみたいところなのですが、その前に、先に「花」を作成する必要があります。

何故、「木」の前に「花」かというと、『Sapling Tree Gen』アドオンは、各種詳細設定を3Dビュー追加直後の[オペレーターパネル]から行うという性質上、先に「花」を作成しておく必要があるのです。

「桜花」の作成

枝だけの木では、折角春に作る桜にしては物悲し過ぎるので、文字通り「花を添える」ために、そのための「花」用のメッシュオブジェクトを用意します。

木 花無しver
木 花有りver

まずは1枚の「花弁」を作り、

その後に「花弁」を8枚コピーして円形状に並べて「桜花」を作ろうと思います。

一片の「花弁」

「花弁」メッシュ作成

まずは、平面メッシュオブジェクトから、一片の花弁を作成します。

トップ(上)の視点
ライト(右)の視点

『ミラーモディファイアー』を使用すると、綺麗に左右対称に形成出来ます。

[プロパティエディター]>[モディファイアー]の[モディファイアーを追加]メニューから[ミラー]を選択

次に、『サブディビジョンサーフェスモディファイアー』を使用して「細分化」し、メッシュの線を全体的に滑らかにします。ちなみに、花弁の下部分の辺に、『クリース』(ピンク色が付いている辺)を付けて、部分的に鋭角な線を保つようにしました。

「細分化」して全体的に滑らかな線を描くように形成
[プロパティエディター]>[モディファイアー]の[モディファイアーを追加]メニューから[サブディビジョンサーフェス]を選択

「花弁」マテリアル作成

形は出来たので、『マテリアル』を設定します。

「桜の花弁」用のマテリアル設定

『マテリアル』を新規作成して、『シェーダーエディター』で↓のようにノードを繋げます。ここでのポイントは[放射]に色の設定をしている事です。

『シェーダーエディター』で「桜の花弁」用のマテリアル設定

[RGBカーブ]ノードの[C]以外のチャンネルのカーブは↓のようになっています。

[RGBカーブ]ノード [Rチャンネル]
[RGBカーブ]ノード [Gチャンネル]
[RGBカーブ]ノード [Bチャンネル]

「花弁」を板ポリゴンにベイクしてローポリゴン化

形と色が決まったら、平面メッシュを追加して、「花弁」に重なるように変形・配置します。

トップ(上)からの視点
ライト(右)からの視点

平面メッシュに、頂点数が変わるような編集を加えていない場合、デフォルトでUV展開済みの状態のUVマップがそのまま使えるはずです。確認するには、平面メッシュを選択状態にして[編集モード]へ切り替え、[UVエディター]を表示します。

[UVエディター]上で平面メッシュのUVマップを表示

ベイク用に平面メッシュの方で『マテリアル』をまた新たに作成しておきます。

[シェーダーエディター]上で、[追加]メニュー([Shift]+[A])から[画像テクスチャ]ノードを選択して追加し、[新規]ボタンから[新規画像]を作成しておきます。名前を”sakura_emissive_texture”とし、[OK]ボタンを押します。(このテクスチャでは[アルファ]のチェックを外さないでください)

この時点では、この[画像テクスチャ]ノードは他のノードに繋がないで、この[画像テクスチャ]ノードのみを選択した状態(ノードの縁が白く表示される)にしておいてください。

新規画像が作成出来たら、[UVエディター]上の表示が黒く変わると思います。また、この時、平面メッシュの頂点を全選択([A])状態にしておきましょう。

[オブジェクトモード]の状態で、「花弁」→「平面」の順番で選択します。

[プロパティエディター]>[レンダープロパティ]から『ベイク』を行います。

まず、[レンダーエンジン]を[Cycles]に変更します。この[Cycles]にしないと、『ベイク』出来ません。

次に、[ベイクタイプ: 放射]に設定します。「花弁」のマテリアルの方で、[放射]に色を設定していましたのがここでの設定に反映されています。

[選択→アクティブ]を有効にすると、2つのオブジェクトを使った、「ハイポリゴン」→「ローポリゴン」といった転写のようなベイクが出来ます。

[レイの距離]は、ここまで距離必要ないのですが、一応”1m”と、ベイクに使用する2つのオブジェクト間の距離に余裕を持たせておきました。

ここまで設定が終わったら[ベイク]ボタンを押してベイクします。

『ベイク』した結果、こんな感じのテクスチャが焼けました。『ベイク』後、すぐに[画像]>[名前をつけて保存]から画像テクスチャを保存しておくことをオススメします。

[シェーダーエディター]上で、先程は繋いでいなかった[画像テクスチャ]ノードを↓のように繋ぎます。

このテクスチャを新規作成した時に、[アルファ]のチェックを外していなければ、このテクスチャは一部透明な部分が出来ているはずです。

ただし、こういったテクスチャの「アルファ情報」は、[レンダーエンジン]を[Cycles](加えて3Dビューで確認するには[3Dビューのシェーディング]を[レンダー])にしておかないと、レンダリングに反映されません。

一輪の「桜花」

「桜花」メッシュ作成

「八重桜」を作成するつもりなので、作りやすさも見込んで8枚で1輪の桜花を作成しようと思います。

『オペレーターパネル』で[頂点: 8]に設定した円メッシュオブジェクトを追加し、[Z: 22.5d]回転させた状態のものを用意します。

[編集モード]に移り、円の大きさを大体花弁の大きさに合うように↓のように縮小します。

更にZ軸方向へ押し出し([E])、下部分を縮小して↓のように形成します。

[オブジェクトモード]ではなく、[編集モード]の状態で全体的にメッシュをオブジェクトの原点より上の方に移動しておきます。

この「桜花」用のメッシュオブジェクトの「原点」が[X: 0], [Y: 0], [Z: 0]のまま、というのがポイントです。

トップ(上)からの視点
ライト(右)からの視点

先程作成した「花弁」をベイクした板ポリゴンを、この8枚の内の1枚の形状に沿わせるように移動させます。

  1. 「桜花」メッシュの内、対応する頂点を選択
  2. 「スナップメニュー([Shift]+[S])」→「カーソル→選択物([2])」
  3. 「花弁」をベイクしたメッシュの[編集モード]へ移り、対応する頂点を選択
  4. 「スナップメニュー」→「選択物→カーソル([8])」

これを4つの頂点で繰り返します。

割り当てられているテクスチャに歪みが生じますが、『サブディビジョンサーフェスモディファイアー』を使用して「細分化」すれば歪みが治るので問題ありません。

GIFでは[ビューポート]の数値しか変更していませんが、[レンダー]も”4″に変更しておきましょう。

次にこの「花弁」を、『配列モディファイアー』を使用して、8枚に増やします。

『3Dカーソル』を中心に移動([Shift]+[C])、十字のエンプティオブジェクトを追加します。

「花弁」に『配列モディファイアー』を追加し、[適合する種類]に[定数で指定]を選択した上で[数: 8]に設定し、コピーを8つ作成します。[オフセット(OBJ)]だけを有効にして、先程作成した十字のエンプティを指定します。

後は、十字のエンプティをZ軸方向に45°回転させるだけで8枚の「花弁」が円形に並べられます。

『配列モディファイアー』について、詳しくは↓の記事をご覧ください。

「桜花」をベイクしてローポリゴン化

今回は円メッシュオブジェクトから頂点数が変わるような編集を加えたので、『UV展開』する必要があります。

「UVマッピングメニュー([U])」>[展開]からUVマップの展開が行えます。

[UVエディター]で確認すると、展開されたUVマップの確認できます。

「花弁」のメッシュを並べるのに目安として使用した「桜花」メッシュで新規の『マテリアル』を作成し、割り当てます。

[シェーダーエディター]上で、[画像テクスチャ]ノードを追加、テクスチャの新規作成をします。名前を適当に”yae_sakura_texture”としました。

このノードも、ベイクするまでは他のノードと繋がない状態で、このノードのみを選択状態にしておきます。

新しく作成した”yae_sakura_texture”テクスチャを[UVエディター]で表示するように設定すると、まだベイクしていない状態なので、真っ黒に表示されます。

『配列モディファイアー』を使用して8枚に複製した「花弁」→「桜花」の順に選択し、先程と同じように設定してベイクしましたら、↓のようになりました。

このテクスチャを[シェーダーエディター]で↓のようにノードを繋ぎ、透け感のあるマテリアルにしました。

これで「桜花」は完成です。

この「桜花」用のメッシュのオブジェクト名は”sakura”としておきます。

ちなみにですが、『Sapling Tree Gen』アドオンを使用する際に、注意しておいてほしいの事が1つあります。3Dビューポート上に存在する全てのメッシュオブジェクト名に、平仮名やカタカナや漢字を使うのは避けてください

『Sapling Tree Gen』アドオンは、3Dビュー上に新しく追加された時、「葉」(今回は「花」ですが)として使うためのメッシュオブジェクトを、自動的に3Dビュー上から検索してくれるのですが、その時にメッシュオブジェクト名に平仮名やカタカナや漢字のような文字が使われているとエラーしてしまうようです。

「木」の作成

さて、いよいよアドオン『Sapling Tree Gen』を使って「木」の部分を作成していきます。

まずは、3Dビューポート上で、『追加メニュー』([Shift]+[A])から、[カーブ]>[Sapling Tree Gen]を選択します。

追加メニュー([Shift]+[A])>[カーブ]>[Sapling Tree Gen]

もし、『追加メニュー』の[カーブ]で表示されるオブジェクト一覧に[Sapling Tree Gen]が無い場合は、Blenderのアドオンの設定を変更する必要があります

[編集]>[プリファレンス…]から表示される『Blenderプリファレンス』ウィンドウの[アドオン]から、[Add Curve: Sapling Tree Gen]を見つけ出し、その横のチェックボックスにチェックを入れ、[更新]してください。

『Blenderプリファレンス』ウィンドウの[アドオン]から[Add Curve: Sapling Tree Gen]を有効化

追加できましたら3Dビューポート上に、「木」が生成されるかと思います。

追加直後に出てくる『オペレーターパネル』から、詳細な設定が可能です。

※1度他の操作を挟むと『オペレーターパネル』が消え、「木」オブジェクトの設定が変更できなくなってしまいますので、ご注意ください。

今回の記事では、主に触る項目だけ少し説明を入れますが、他の項目に関しての詳細な説明については割愛します。

もし、アドオン『Sapling Tree Gen』の各設定項目について全体的に、あるいは気になった設定項目があってそれについて詳しく知りたくなった方は↓の記事をご覧ください。

デフォルトの値から変更する部分を、赤い囲みで表していますので、各設定項目を、画像通りに数値を弄ってみてください。

また、軽量化したい場合の対処方法も含めてご説明させていただきます。

形を作成する「モデリング」と、枝や花を揺らして動かす「アニメーション」の2つの工程に分けてご説明します。

PCのスペックに余裕のない方は、「アニメーション」の工程は省略することをオススメします。

モデリング編

「木」の形成に関する設定をしていきます。

[ジオメトリ(Geometry)]の設定

ここでは何も触っていません。

軽量化したい場合、[ベベル解像度][Curve Resolution]の値を下げたり、[ハンドルタイプ]を[自動]から[ベクトル]へ変更してください。

[設定: ジオメトリ]

[Branch Radius]の設定

ここでは、[Branch Radius Ratio]という項目の数値を、”1.26″に変更し、枝の太さを微妙に細くしています。

[設定: Branch Radius]

[Branch Splitting]の設定

ここでの変更点は、以下の6箇所です。

[レベル]では、枝分かれのレベルを設定しているのですが、この数値が大きければ大きい程、細かく枝分かれしていきます(最高で”4″まで設定できます)。数値によっては結構重くなりやすい項目です。軽量化したい場合は、まずこの数値を低くしてください。

[Base Splits]では、幹の(一番初めに枝分かれる部分)の分割数を設定しています。今回は”1″にしましたのでそこまで影響ないと思いますが、この項目も数値が大きいと重くなる可能性がある項目です。

[Trunk Height]は、枝分かれし始める高さを設定しています。

[Secondary Base Size]では、[Trunk Height]の次の枝分かれし始める部分の高さを設定しています。

[Split Height]では、幹が分割し始める高さを設定しています。

[Branches]では、各[レベル]で発生する枝の数を設定しています。この項目も、数値を大きくし過ぎると、重くなる項目ですので、軽量化したい場合は各数値を低くしてみてください。

今挙げた項目以外に、軽量化に関係する項目は[Curve Resolution]です。各分岐の(カーブオブジェクトの)セグメント数を設定する項目です。

[設定: Branch Splitting]

[Branch Growth]の設定

ここでの変更点は、以下の3箇所です。

[長さ]は、各[レベル]毎の枝の長さを設定しています。

[Down Angle Variation]は、分岐元の端に向かって[Down Angle]を減らす角度を設定しています。

[Curvature]は、枝の端の角度を設定しています。

[設定: Branch Growth]

[Pruning]の設定

ここでは変更点はありません。

[設定: Pruning]

[Leaves]の設定

ここでの変更点は、以下の4箇所です。

[Show Leaves]は、設定した(今回は「葉」ではなく「花」ですが)「葉」用のメッシュオブジェクトを表示/非表示の切り替えを設定します。この項目は[Leaves]などの項目の設定によっては、重くなる可能性があります。

[Leaf Shape]では、「葉」として設定するメッシュオブジェクトのタイプを設定します。今回はあらかじめ用意したオブジェクトを使用するので、[DupliFaces]に設定していますが、何も「葉」として用意していない場合でも、[六角形]や[Rectangler]に設定することで、六角形か、四角形の葉を「木」に付けることができます。

[Leaf Object]では、「葉」として設定可能なメッシュオブジェクトが設定できます。今回はあらかじめ作成しておいた「桜花」用のメッシュオブジェクトの[sakura]を設定していますが、設定可能なメッシュオブジェクトが存在しない場合は、[No objects]と表示されます。

[Leaves]では、枝毎に付ける葉の最大数を設定します。この数値を大きくし過ぎると重くなる可能性がありますので、軽量化したい場合は、この数値を低くしてみてください。

[設定: Leaves]

アニメーション編

「アニメーション」を行おうとすると、どうしても重くなりやすいので、PCのスペックに余裕がない場合は、以下の[アーマチュア]や[アニメーション]の設定には触らない事を強くオススメします。

また、基本的にこの工程に移るのは、「モデリング」の工程を全て済ませてからにしてください。計算が遅くなりますし、効率的にもオススメできません。

[アーマチュア(Armature)]の設定

ここでは[Use Armature]にチェックを入れ、アーマチュアオブジェクトを作成しているだけです。

[設定: アーマチュア]

[アニメーション(Animation)]の設定

ここでの変更点は、以下の5箇所です。

[Armature Animation]を有効にすると、[アーマチュア]で作成したアーマチュアオブジェクトに、アニメーション設定されます。

[Leaf Animation]を有効にすると、「葉」1枚毎にボーンが追加で作成され、アニメーションが設定されます。

[Animation Speed]では、シーンのフレームレートに応じてアニメーションの速度を設定します。

[Overall Wind Strength]では、アーマチュアのアニメーションに適用する風の強さを設定します。

[Wind Gust Fequency]では、[Wind Gust Strength]で設定した方向からの風の影響を動きに加える頻度を設定します。

[設定: アニメーション]

ということで、以上で「桜の木」の作成自体はこれで完了です。アニメーション再生したい場合はキーボードから[スペースキー]を入力するか、[タイムラインエディター]の[▶]ボタンをクリックしてください。

[タイムラインエディター]の再生ボタン

おまけ: 動画の作成 –『レンダリング』について

『Sapling Tree Gen』を使って「モデリング」と「アニメーション」を作成してみたわけですが、記事冒頭で貼ったような「動画」を作成したい方のためのおまけになります。

このメイキングの裏話なのですが、私のPCでは重くてアニメーションがまともに再生できず、一々レンダリングして、出来上がった動画で[アニメーション]の風に関する設定を微調整していたという、一番時間を取られた作業(?)が実は「レンダリング待ち」の時間だったりします… _(:3 」∠)_

(正直、「もうちょっと「木」自体を軽くすればよかったのでは?」と途中で軽く心が折れかけたり萎れかけたり汗)

という余談はここまでにしておき、「動画」として『レンダリング』する前に少し[背景]などの準備をします。

背景やカメラの準備

まず[プロパティエディタ]>[ワールドプロパティ]から、[World]の設定を変更します。背景を黒一色にしてしまいたいので、[サーフェス]の[カラー]をクリックすると表示される『カラーピッカー』から黒に設定します。

更に「月」用のUV球を用意します。『マテリアル』の設定は、[放射]の色だけ↓のように変更しました。

「月」、「桜の木」、「カメラ」の3つのオブジェクトの配置は、上からの視点(テンキー[7])で確認するとこんな感じにしました。

「月」の位置が[X: -7.92926 m], [Y: 27.4993 m], [Z: 20.2522 m]。

「桜の木」の位置が[X: 0], [Y: 0], [Z: 0]。

「カメラ」の位置が[X: 7.35889 m], [Y: -6.49579 m], [Z: -1.58169 m]。回転が[X: 113.759d], [Y: 0d], [Z: 39.5919d]。

ちなみに、キーボードのテンキー[0]を押すと、カメラ視点に切り替えられますので、『レンダリング』前のチェックに便利です。

カメラからの視点(テンキー[0])

レンダリングの設定

『レンダリング』する方法や設定は↓の動画様を参考にさせていただきました。

[プロパティエディタ]>[レンダープロパティ]での設定で、まずは[レンダーエンジン]を[Eevee]にしました。

[プロパティエディタ]>[レンダープロパティ]の設定

「桜花」オブジェクトに割り当てているマテリアルの、[伝播]や[アルファ]のようなシェーディング設定は、この[Eevee]では反映されません。

[レンダーエンジン: Cycles]
[レンダーエンジン: Eevee]

なので、使用しているテクスチャの一部透明な部分が黒く表示されたり、全体的な透け感が無くなってしまいますが、 [背景]を真っ黒に設定したのと 「桜花」オブジェクト自体の1つ1つの大きさが小さく、そこまで目立たないので、今回はこちらのエンジンを使用します。

次に、[プロパティエディタ]>[出力プロパティ]での設定です。

[寸法]で、[解像度]をそれぞれ[X: 1280px]、[Y: 720px]。[フレームレート: 60FPS]に設定しました。

[出力]で、 [ファイルフォーマット]のプルダウンメニューから[FFmpeg動画]を選択し、”.mkv”形式の「動画」として出力されるように設定しました。

[プロパティエディタ]>[出力プロパティ]の設定

準備が出来たら、画面の上部にある『レンダーメニュー』から[アニメーションレンダリング]を選択するか、またはキーボードから[Ctrl]+[F12]を入力して『レンダリング』を開始します。

『レンダリング』が開始されると↓のように、画面下部にある『ステータスバー』でフレーム毎にレンダリング進捗状況が表示されます。これが表示されなくなるまで待ちましょう。

『ステータスバー』のレンダリング進捗表示

完全に終了したら、PCの「C:\tmp」のフォルダ内に、出力された動画があるはずですので確認してみましょう。

「C:\tmp」のフォルダ内に出力された”.mkv”形式の動画ファイル

あとがき

最近、世界中で流行しているコロナウイルスの影響で、日本でもイベントや移動の制限、または自粛などで、折角桜が見ごろを迎える季節になってきたというのに、外出して春を満喫するという訳にはいかなくなっていますよね。

ここでご紹介したものは、匂いもなく、触れることもできない、「”虚像”の桜の木」ではありますが、少しでも春を楽しみたい方への慰めとなれれば幸いです。

参考にさせていただいたサイト・ページ一覧

Blenderに関する記事や作品をまとめたページ作りました!

Blender Note
モバイルバージョンを終了