UE4のランドスケープを自然豊かにする!

おっさんモデルが広い大地を動けるようになったのは喜ばしい事ですが、自然が足りません!
今回はランドスケープ グラスタイプによる草生やしと、フォリッジタイプによる木を生やす作業によって、緑豊かな大地を目指します!
草と木を手に入れる!
作成したランドスケープに草や木を生やそうと思っても、肝心の物が無ければ始まりません!
ランドスケープのテクスチャの時同様、今回も公式のチュートリアルプロジェクトから草と木を頂戴したいと思います。
今回目をつけたのは、ラーニングの「オープンワールドデモコレクション」です。
オープンワールドなら草と木絶対あるだろ!という安直な考えです(汗
あと、非常にハイクオリティな素材達で構成されたコンテンツとなるので、個人的にメチャメチャ重いです。(涙
ハイスペックPCなら多分問題なく見れるのでしょうが、自分のおっさんスペックPCでは、スタティックメッシュの木をダブルクリックして見ようと思ったらフリーズしました・・・・orz
適当に作成したプロジェクトに追加してあげ、プロジェクトを開いて中身を見て見ます。
ありました!「SM_FieldGrass_01」といういかにも草です。これを自分のプロジェクトに持って行きたいと思います。
前回はランドスケープのテクスチャーだったので、エクスポートしましたが、今回はアセットアクションの「移行」を行います。
草関係のコンテンツを全て選択した状態で、移行を選択すると、移行先の自分のプロジェクトの「コンテンツフォルダ」を指定するメニューがあります。
正しくコンテンツフォルダが指定されれば、草関係のコンテンツと関連のある物含めて、階層ごと自動で移行してくれます。
階層のフォルダが増えてしまうのは気になりますが、マテリアル等の関連性を保ったまま持ってこれるのは有難いですね。
早速自分のプロジェクトに持ってきた草を確認してみます。
移行元で確認したのと同様、風にたなびく草が確認できました!
木も同様の方法で自分のプロジェクトに持ってきて使って行きます。
ランドスケープ グラスタイプを作成する!
草や木等のモデルを一つ一つメッシュとして扱って、手作業で置いていくのは作業量的にもシンドイですし、描画処理も重くなってしまいます・・・!
今回使用するランドスケープ グラスタイプとフォリッジタイプは、同じメッシュであれば複数のオブジェクトであっても一度の描画命令(DrawCall)で済むという特徴があり、描画処理にも優しい機能となっているようです。
グラスタイプはランドスケープのマテリアル内で指定したテクスチャーでペイントされた場所に自動で配置されますが、フォリッジタイプは自分でペイントして配置する違いがあります。
まずはランドスケープ グラスタイプから作成したいと思います。
コンテンツプラウザで右クリック→「その他」→「ランドスケープ グラスタイプ」を選択して作成します。
作成したグラスタイプをダブルクリックして、詳細を表示します。
「Grass Mesh」に持ってきた草、「SM_FieldGrass_01」をセットします。ここで草の密度や大きさのランダム性等、草の生え具合が設定できるので色々試すと面白そうです。
次はランドスケープのマテリアルをダブルクリックしてブループリント編集画面にします。
右クリックして「Landscape Grass Output」を追加して、詳細の「Grass Type」に先ほど作成したグラスタイプをセットします。ここは配列になっているので、複数セットできるようです。
次にLandscape Grass Outputに繋ぐ、「Landscape Layer Sample」というノードを作成します。作成したら、詳細に「Parameter Name」という項目があるので、ランドスケープのレイヤーブレンド使用している草を生やしたいLayer Nameを入力します。
上記でグラスタイプの作成は完了しましたので、早速実行して見て見ます!
地面に風にたなびく草が生えました!
ちゃんとSoilやSnowで塗ってる箇所には草は生えず、Grassでペイントした箇所のみ生えております。
フォリッジタイプで木を生やす!
草生えたので、次は木生やします!
フォリッジタイプは、UE4のモード部分に枝っぽいアイコンがあるのでそちらを選択します。
フォリッジタイプの追加を選択するか、ドラッグ&ドロップで持ってきた木のスタティックメッシュをセットします。
追加されたフォリッジタイプを選択すると、グラスタイプの時と同様、生え方、生え具合の設定ができます。
生え方をまばらにしたり、大きさのランダムスケール範囲指定、どのくらいの傾斜まで生やすのを許すか等、お好みの生え具合に設定してペイントして行きます!
後、個人的に注意しないと行けない点がありました・・・・!
フォリッジタイプの設定項目で、「Density / 1kuu」というのがあるのですが、これは「1000×1000単位の領域ごとに木を何本生やすか」というパラメーターとなっていますが、デフォルト値で100が設定されています。
最初、深く考えないで100のままペイントしてしまったのですが、持ってきた木のスタティックメッシュが予想以上に大きく、重かったため、木同士が合体して聖剣伝説のマナの木を連想するような巨大樹が誕生してPCがあわやフリーズ寸前となりました・・・・(汗
草とかポリ数の少ないスタティックメッシュなら100で全然問題無いと思うのですが、自分が今回持って来た木がなかなかのハイスペックだったようで、パラメータを「1」にして一本づつペイントしました(涙
ついに自然豊かとなった大地が・・・・・!!
ただのペイントのみで殺風景だったランドスケープが、草木を生やす事で雰囲気が大きく変わり、リアリティが増しました!
これで草木を生やす方法がわかりましたが、多くの課題も生まれました・・・。
まず、「オープンワールドデモコレクション」から持って来た木ですが、やはり重いです!
とにかく木を置いた後のライティングビルドが非常に時間が掛かるのが辛く、何やら木が持ってるライティングが対応してないみたいな警告も出てしまいました。
ですのでフォリッジタイプで使うように作られてて、軽くて良さげで無料な草木のアセットが見つかったら、ぜひ差し替えたいと思いました。
そんな都合の良いアセット無いですよね・・・・・!!(涙
ディスカッション
コメント一覧
カイトデモのアセットは総じて重いです。
特に木はポリゴン数が多いため、本当にゲームに使いたい場合は
一番見せたいところくらいしか置けないでしょう。
Lake Side Cabinというアセットはおススメですが有料です。
無料ではInfinity Bladeの木とか使えるかもしれません。
最近無料アセットも増えたので、探したらいいものがあるかもしれませんが僕もわかりませんw
ちなみに草も木も揺れるようにすると途端に重くなります。
影を落とさない設定にし、かつスタティックライティングを焼き付くようにしてやらないとリアルタイムではなかなか難しいと思われます。
カイトデモはやはり重かったんですね・・・!(涙
ライティングビルドにも時間が掛かり、ログに出る警告表示も気になったので現在は公式チュートリアルの「ブループリンツ」から植物関係のアセットを持ってきて見ました。
頂点数も多少少なく、警告ログも消えて動作も少し軽くなりましたw
Lake Side Cabinのお値段が中々ですね・・・・!w
Infinity Bladeのアセットが無料公開された事をすっかり見落としてました!植物以外にも、武器とかモンスターとかもあって良い感じですね!
草木揺れはリアリティが出て好きなんですが、使い方を気をつけないといけないですかね・・・・(汗
光源が動かず、静的なオブジェクトであればスタティックライティングであらかじめ影を焼いちゃう作戦もその内考えないと・・・・w