にて、初心者にとって芝生は予想外にも難易度が高く、しかし芝生の作り方のパターンは分かったので、その中で一番オーソドックスなパーティクルシステムを使った芝生の作り方をここにまとめる。
パーティクルに関しては、
パーティクル解説ページ
にまとめた。
また、パーティクルを使った芝生に関しても、何パターンか方法がある。
パーティクルのみ
まず、パーティクルのみを使った方法です。パーティクル
- 平面を追加して選択
- パーティクルプロパティよりプラスボタン
- ヘアーを選択
- 詳細設定をチェック
- 発生>「数」を増やす
- 発生>「ヘアー長」を調整
- 物理演算>ブラウン運動を0.01
これで立体感が出る。
パーティクル + テクスチャ
テクスチャまではしてみたけど、パーティクルとの合わせ技か、なるほど。。テクスチャ
まずテクスチャは、- オブジェクトを選択
- シェーダーエディターで新規
- 追加>テクスチャ>画像テクスチャ
- 画像テクスチャとプリンシプルBSDFを接続
- 画像を選択
これでマテリアルプレビューで反映される。
次はパーティクル。
パーティクル
- パーティクルプロパティよりプラスボタン
- ヘアーを選択
- 詳細設定をチェック
- 発生を3万など
- ヘアーの長さを0.06
- 物理演算>ブラウン運動を0.01
これで立体感が出る。
パーティクル + 芝生オブジェクト
こちらがリアルな芝生で、かつ一面芝生でも軽い方法。芝生オブジェクトを用意して、パーティクルでオブジェクトを指定する。
芝生オブジェクトは、ある程度ばらばらにしておく。
こちらのアセット
参考。
ダウンロードするのもおすすめだ。
基本設定
- 平面追加
- 芝生(草)オブジェクトを追加
- 平面にパーティクル追加
- パーティクルをヘアにする
- パーティクルのレンダーのレンダリング方法をオブジェクトに
- そして下のインスタンスオブジェクトに草を設定
しかし、むやみに数の数値を上げると重くなる。
コツは、長さを出来るだけ上げて、数を出来るだけ少なくするようにする。
数が必要なら、子パーティクルを優先的に使う。
そうすると、一面が可能になった。
調整設定
色のランダム性
草オブジェクトのマテリアルに、オブジェクト情報(ランダム)- カラーランプ - プリンシプルBSDF - マテリアル出力
にすると、色がランダムになる。
本来の画像テクスチャとミックスするのもよい。
位置のランダム性
パーティクル>発生>ソース>分布をランダムにし、ランダム順と等分布にチェック入れてみたりする。
長さのランダム性
パーティクル>レンダー>スケールのランダム化を変更。
パーティクル + 芝生オブジェクト + ウェイトペイント
上記のやり方で、さらにウェイトペイントと組み合わせて、ウェイトで芝生の多い少ないを表現する方法だ。- 平面追加
- ウェイトペイントでヒートマップ作成
- 芝生(草)オブジェクトを追加
- 平面にパーティクル追加
- パーティクルをヘアにする
- パーティクルのレンダーのレンダリング方法をオブジェクトに
- そして下のインスタンスオブジェクトに草を設定
- パーティクルの頂点グループの密度と長さにデータプロパティの頂点グループの名前を選択
すると草が散らばる。