Making Tera

たまに書く不定期ブログ

枝垂桜モデリング

ある日、サークルの方から「枝垂れ桜」のモデルが欲しいと言われまして、分かってはいたのですがポリ数との戦いでした。
Unity用のモデルをModoで作成しております、誰かの役にたてば…とせっかくなので記事にしました。

まず最初に、普通に綺麗に見えるモデルを作成したのですが、四角ポリで7万ポリ!植物特有のやばい予感。
これをリトポ→ベイクしようと思ったはいいものの案の定ビジョンが見えない!!
さっくりモデルを捨てて作戦を立て直しました。


まずはバランスを見ながら幹をローポリで作成
f:id:makingT:20170226003903j:plain

細かい枝はすぐに頂点数が増えるので板ポリで作成
f:id:makingT:20170226004119j:plain

拡大すると分かりますが板ポリを「Ctrl+C → Ctrl+V → F(反転)→ 移動」で裏側にも同様の板ポリが配置されています。
シェーダーで両面描写してもよさそうですが、マテリアル分離などを考えるとこちらのほうがコストが低いと思われます。
f:id:makingT:20170226004441j:plain


物理演算で枝を垂らすことにしました。
まずはサーフェイスジェネレータでポイントを作成
次にリプリケータでカーブを配置
f:id:makingT:20170226005139j:plain

カーブを一つのメッシュにまとめたらダイナミックカーブを適用
プロパティウィンドウのダイナミクスの中にあるカーブ項目でカーブ始点をピン留めしてジョイント角度やピンの角度を調整
カーブパーティクルジェネレータで枝のメッシュを配置してから物理演算を行う!

物理演算


これである程度、完成が見えたと思ったのですが実際にゲーム内に置いてみると「見下ろし視点」の影響でシルエットが思ったように定まりません。
結局すべて手動で配置しなおすことにしました。
カーブにメッシュを沿わせるあたりは一緒ですが、カーブに対してペイントタブにある「ヘアツール」を多用します。
今回のような場合は大きいブラシで「分離」が使いやすいかも
f:id:makingT:20170226193131j:plain

ローポリのモデルが完成したらテクスチャの作成に移ります。
今回、「桜のモデルは暗いマップでライトアップしたい」とのことで通常のワークフローとは異なります。

まずは少ないポリ数でも綺麗に見えるようにノーマルマップを高ポリからベイクして作成。
エミッション用テクスチャも欲しくなるのでAO画像を代用
f:id:makingT:20170226012907j:plain

幹はライトのせいで色が飛ぶと思われるので暗いベース色+法線による表現で。
植物の高ポリモデルはスカルプトで作成するのが楽で早いです。
今回はModoではなくCoatを利用。
気合いを入れてもローポリによってはベイクに限界があるのでここは元モデルにさっと肉付けして終わり。
f:id:makingT:20170226013708j:plain

ここまで来たらゲーム内に持って行って画像を見ながら調整します。
Modoのゲームツールタブを利用するとワンクリックでUnity内で描画の様子を確認できるので捗ります!
(「表示の切替→選択したものだけ書き出し」の部分をマクロ化してショートカットに割り当てておくと便利です)

桜テスト