【Unityアセット】Mtreeを使って樹木のモデリングを行う

この記事では、樹木のモデリングをより素早く、直感的にできるUnityアセットを紹介していきます。

今回ご紹介するのは、「Mtree」というアセットになります。
本記事では、アセットの概要とUnityへのインポート方法をご紹介します。

Mtree

Mtree

サンプル

STYLY GALLERYからサンプル空間を体験できます。

こちらのサンプル空間ではMtreeで作られた16種類の樹木を確認できます。

Mtreeの特徴

プロシージャルモデリング、UVの自動展開、LODの自動設定などが特徴として挙げられます。

また、作成した木はPrefabとして保存されるため、プロジェクト間の移行も可能です。

Unityプロジェクトへの導入方法

Unity Asset Storeでの購入

Unity Asset Storeから購入できます。

アセット価格 $50
対応するUnityバージョン 2017.4.34以上

サマーセールやブラックフライデーセールなどのセールイベントにてこちらのアセットも割引になることがあります。

Unityへのインポート

購入手続き完了後、Mtreeのストアページ、もしくはマイアセット一覧からプロジェクトへインポートできます。

動作に必要な物はパッケージに全て含まれているので、インポート時に全てのファイルにチェックが入っていることを確認してからインポートを行ってください。

使用方法

Mtreeのサンプルシーンを確認する

Mtreeには樹木のテンプレートがデフォルトで同梱されています。

Assets/Mtree/Examples.unityを開いて確認してみます。

全部で16種、さまざまな形状の樹木のテンプレートが既に作られていることが確認できます。

Mtree

Mtree

Mtreeを使ってオリジナルの木を作る場合、こちらのテンプレートの中から理想の形状に近い物を選び、編集を行っていくのがオススメです。

今回は、サンプルの一つである「SmallTree」を編集しながら、使い方を紹介していきたいと思います。

SmallTree

SmallTree

サンプルの木を編集する

サンプルの木の編集を行う前に、これから編集する木を複製しておきます。対象を右クリック→Duplicateで複製することができます。

今後は複製によって生まれた方の木の編集を行っていきます。

基本となるコンポーネント

Inspectorを確認すると、「Mtree Component」というコンポーネントが存在することが確認できます。

Mtreeでは、こちらのコンポーネントのFunctionsタブ内にある、Trunk,Branch,Leavesの3つの項目に設定されている数値を変更することで、樹木の生成や形状を変更できます。

Functionsタブ

Functionsタブ

実際に数値を変更してみると、リアルタイムに木の形状が変化することが分かります。

リアルタイムに木の形状が変化する

リアルタイムに木の形状が変化する

次に、Trunk,Branch,Leavesそれぞれの主要な設定項目を紹介します。

Trunk(木の幹)

Trunk Functionでは、ベースとなる木の幹に関する設定をすることができます。 以下が主要な設定項目です。

 

  • Length:木の長さ
  • Radius:幹の太さ
  • Spin Amount:ねじれの量

Branch(幹から分かれた茎、及び枝)

Branch Functionでは、木の幹から分かれた茎、及び枝に関する設定をすることができます。 以下が主要な設定項目です。

 

  • Number:幹から分かれる枝の量
  • Length:枝の長さ
  • Radius:枝の太さ
  • Angle:枝の角度
  • Gravity Strength:重力による補正の強さ(値を大きくすると枝全体が垂れ下がったような見た目になります)
  • Start:幹から枝が生え始める高さ

Leaves(葉っぱ)

Leaves Functionでは、枝から生えた葉に関する設定をすることができます。 以下が主要な設定項目です。

 

  • Number:葉の量
  • Size:一枚一枚の葉の大きさ
  • leafs weight:葉の重さ

また、Leaves Function内には葉のテクスチャの貼り方を制御するタブが存在し、この設定を変更することでテクスチャの貼られ方を変更することができます。

ベジエカーブを用いた木の加工

Mtree Component下部に存在するUse MtreeというタブをUse Bezierに切り替えることで、ベジエカーブを用いた木の加工もできます。

このモードでは、木に白線のカーブと編集点が表示されるようになります。この編集点の位置を変更することで木を伸ばしたり曲げたりできます。

また、編集点はAdd Curveボタンで増やすことができます。

ベジエカーブを用いた木の加工

ベジエカーブを用いた木の加工

作成した木をPrefabとして保存する

Functionタブ内での作業が終わったら、タブをFunctionからSave as Prefabに切り替えて作成した木の保存を行います。

Save folderから保存先のフォルダを指定し、nameでPrefabの名前を設定します。

その後下部にあるSave as Prefabボタンを押すことで作成した木を保存できます。

保存された木はPrefabとしていつでも配置することができます。また、LODの設定も自動的に行われます。

作成した木をPrefabとして保存

作成した木をPrefabとして保存

以上が、Mtreeアセットの主要な使い方になります。

葉のテクスチャを作成する

Mtreeアセットには葉のテクスチャ(Albedo,NormalMap)を作成する機能が付属されています。

Window→Mtree→BranchEditorから編集画面を開きます。

こちらもMtree Component同様、各種パラメーター変更後に下部にあるSave Textureボタンを押すことでテクスチャとして保存することができます。

葉のテクスチャを作成

葉のテクスチャを作成

UnityからSTYLYにアセットをアップロードする方法

この記事ではMtreeを使って樹木のモデリングを行う方法を紹介しました。

MtreeはUnityに標準搭載されているTreeコンポーネントよりも直感的に樹木のモデリングすることができるので、オリジナルの木を素早く作りたいという方にはとてもオススメできるアセットです。