# プロシージャルメッシュツール

Dashには、ジオメトリを生成するさまざまなツールがあります：Road Tool、Terrain Tool、Cable Tool など…

## ベイク

これらのツールはすべて、タイプ `DashPreviewMeshComponent`のアクターを生成します。このカスタムタイプにより、メッシュ生成のパフォーマンスとアルゴリズムを完全に制御できます。

メッシュベースのツールについて最初に知っておくべきことは、ベイクのアイコンが <img src="https://1281618638-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYp9tAkqjcwFDufAaviIa%2Fuploads%2F9ANCQGpYmXbpLX6dXgVz%2Fbake_color.png?alt=media&#x26;token=1339c809-31ab-46e8-9bb8-2f1c20b64b6c" alt="" data-size="line"> Tools Panel に常にワンクリックでアクセスでき、メッシュに接続されたツールを削除してから、Dash のメッシュを通常の UE5 スタティックメッシュに変換することです。

Dash で生成したメッシュをベイクしたい理由はいくつもあります：

* Dash がインストールされていない他のコンピューターでも使用・表示できるようにするため。
* Nanite、頂点ペイント、その他の UE 機能を使うため。
* 編集が終わった後、もう必要ないかもしれないツールをシーンから整理するため。

<figure><img src="https://1281618638-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYp9tAkqjcwFDufAaviIa%2Fuploads%2FflmoSeFJ5NWWbAtxNh6D%2Fimage.png?alt=media&#x26;token=7f121558-6311-4645-8cc8-e615944fae62" alt=""><figcaption></figcaption></figure>

Tools パネルのベイク機能のほかにも、このメッシュのコンポーネントを選択すると、ボタン **Create Static Mesh** が表示され、スタティックメッシュに変換できます。

<figure><img src="https://1281618638-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYp9tAkqjcwFDufAaviIa%2Fuploads%2FhO18k76eIgchjbFsdewi%2Fimage.png?alt=media&#x26;token=baeafbbd-db1c-4dae-bc97-b5571bf3da06" alt=""><figcaption></figcaption></figure>

## Terrain Tool

地面として使用するプロシージャルメッシュを作成します - この地形は、Terrain Tool 内の使いやすいコントロールで思いどおりに調整できます。たとえば、高さ、乱流、UV スケールを調整できるほか、高さマップやスプラインで変形させることもできます。Terrain Tool は Dash で検索するか、Create メニューで見つけられます。&#x20;

{% embed url="<https://streamable.com/0nb3xh>" %}

## Cable Tool

スプライン、オブジェクト間、またはメッシュの上に散布されたプロシージャルケーブルを作成します - さまざまな設定が用意されており、これまで以上に簡単に、完全プロシージャルなケーブルを作成できます。Unreal Engine 5 の都市環境やジャングル環境に最適です。もちろん、ケーブルの本数、サイズ、重力などを完全に制御できます！Cable Tool は Dash で検索するか、Create メニューで見つけられます。

{% embed url="<https://streamable.com/e6dnv0>" %}

## Vine Tool

指定したサーフェス上にツタを作成します - どんな森や繁茂した環境にも最適で、あらゆるサーフェスやアセット上に 2 秒でプロシージャルなツタを作成できます。ツタには葉が付くことが多いため、Dash の Content Library から葉のアトラスをサーフェスへ CTRL ドラッグ＆ドロップするだけで、1 秒で葉の付いたツタをアセット／サーフェス全体に広げられるよう、非常に簡単にしています。その後、成長量、枝と葉のサイズなどを調整できます。とにかく簡単です！&#x20;

もちろん、Vine Tool も Dash で検索して開けます。次に、起点（空のアクターまたはカーブ）と、ツタを成長させたいサーフェスを割り当てます。3 つ目の開き方は、Dash で Draw Vines を検索する方法です。これで Draw Mode が開き、カーブを描くと、そのカーブに沿って自動的にツタが作成されます！この Draw Mode は ESC または STOP ボタンをクリックして終了できます。&#x20;

{% embed url="<https://youtu.be/Y_Ja4n3RSf0>" %}

## Road Tool

入力カーブ／スプラインに沿って道路／パスメッシュを作成します - UE5 でプロシージャルな道路が欲しいと感じたことがあるなら、これを使うと満足できるはずです！Dash でスプラインを描いて Road Tool に割り当てるだけで、ほら、スプラインの形にぴったり一致した道路ができます。サーフェスにさらに沿わせたい場合は、Geometry セクションに Projection Mask があります。さらに、スプラインや下地のサーフェスを変更すると、道路は自動で調整されます。Road Tool は Dash で検索して見つけられます。

そしていつものように、通常のスライダーやトグルで道路をカスタマイズし、環境に最適な結果を得られます。プロのヒントとして、道路を作成した後は、Surface Scatter で proximity mask として割り当てることで、道路上に草などが生えないようにできます。

{% embed url="<https://streamable.com/587zqa>" %}

## Quick Pipe

入力カーブに沿ってメッシュのパイプを作成します - パイプ／ケーブルを思いどおりの形でスプラインに描くのが簡単だと思うなら、Quick Pipe がぴったりです。1 本または複数のスプラインをツールに割り当てるだけで、スプラインに沿ったメッシュが即座に作成されます。もちろん、これらのメッシュも通常のスライダーやトグルでカスタマイズできます！Quick Pipe は Dash で検索して見つけられます。

{% embed url="<https://streamable.com/zqn10t>" %}

## Draw Mesh

カスタム形状のメッシュが必要なら、Draw Mesh ツールを使って任意の形を描くと、その形状の基本メッシュを作成できます。Create Menu から、または検索して開けます。開始すると Draw Mode に入り、任意の形を描くと、それに対応するメッシュが作成されます。そのまま好きなだけ作成し、ESC または STOP ボタンで Draw Mode を終了して、気に入らないものを削除できます。&#x20;

{% embed url="<https://streamable.com/oyz2os>" %}

## Mesh Pattern

Mesh Pattern は、付属のプリセットを使用するか、カスタムアセットとパターンで独自に作成して、プロシージャルでタイル化可能なパターンを作るためのツールです。屋根、壁、床、または単純なマテリアル以上の奥行きとディテールが必要なあらゆる人工物のサーフェスに最適です。

検索または Dash バーから、Create -> Mesh Tools カテゴリ内で見つけられます。使い始めるには、1 つまたは複数のサーフェスを割り当てるだけで、デフォルトでそのサーフェス上に Tile A プリセットが使用されます。

{% embed url="<https://streamable.com/3xd1jm>" %}
Mesh Pattern の基本設定
{% endembed %}

#### プリセット

Mesh Pattern の多くの用途に対応できるよう、さまざまなアセットとパターンを持つ高品質なプリセットを 30 以上収録しています。たとえば、Broken Floor、HerringBone、Tiles、Bricks のプリセットがあります。別のプリセットに切り替えるには、Mesh Pattern 上部のドロップダウンリストを展開して別のプリセットを選択するだけです。該当プリセットのアセットがレベル内にまだ存在しない場合は、自動的に追加されます。&#x20;

{% embed url="<https://streamable.com/u9rfbk>" %}
Mesh Pattern プリセットのドロップダウン
{% endembed %}

#### カーブ／スプライン上の Mesh Pattern

Mesh Pattern のサーフェスオブジェクトとしてメッシュや平面サーフェスを割り当てる代わりに、カーブやスプラインも使用できます。フェンスや壁の作成に最適です。Draw Curves ツールのカーブを使う場合は、ほとんど直線のカーブを描くと最良の結果が得られます。より丸みのある形状にしたい場合は、代わりに Draw Spline ツールを使うのが最適です。&#x20;

{% hint style="info" %}
サーフェスオブジェクトとしてスプラインを使用すると、暗黙的なメッシュが作成され、パターンを作成するために使用されるアセットオブジェクトの Z スケールから決定された高さでスプラインが押し出されます。&#x20;
{% endhint %}

{% embed url="<https://streamable.com/8buczm>" %}
Mesh Pattern でのカーブとスプラインの使用
{% endembed %}

#### 設定

他の Dash ツールと同様に、もちろん結果を好みに合わせて正確に調整できます。設定を試し、ホバーして説明を読むことをおすすめしますが、利用可能な設定の概要は次のとおりです：

* 基本プロパティ：タイルのスケール、角度、パディング、沈み込みを調整できます。&#x20;
* ノイズ：ポイントまたはメッシュ自体のどちらにもノイズを加えられます。
* Projection：パターンを 1 つまたは複数のオブジェクトに投影／押し付けできます。&#x20;
* Slice Tiles：Boolean メッシュを使って、たとえば立方体や球体で、パターンオブジェクトを任意の形状に切り取ります。&#x20;
* Proximity Mask：オブジェクト／カーブの周囲の領域をマスクするか、オブジェクト／カーブのすぐ近くのみに保ちます。&#x20;
* Noise Mask：制御されたノイズに従って、パターン内のランダムなオブジェクトを削除します。&#x20;
* Object Masking：レイキャストを使って、オブジェクトの周囲の領域をマスクするか、すぐ近くのみに保ちます。
* Pattern Details：パターンの変化を追加および制御します。また、カスタムプリセット用の Area メッシュを作成します。&#x20;

{% embed url="<https://streamable.com/zd5aww>" %}
Mesh Pattern 設定の紹介
{% endembed %}

パターンの繰り返しがサーフェスにうまく合わないことがあります。その場合は、slice 機能を使って、Boolean メッシュでタイルを任意の形状に切り取れます。この機能は、パターン内に完全な正方形や円形のパターンを「切り抜き」たい場合にも便利です。&#x20;

{% embed url="<https://streamable.com/z5rr1i>" %}
Mesh Pattern の Slice 機能
{% endembed %}

{% hint style="warning" %}
Mesh Pattern の Slice 機能を使うと、アウトライアー内でこれ用の新しい変形メッシュを作成します。これらのメッシュは特殊な Dash メッシュであるため、ゲームを出荷する前にベイクする必要があります。slice メッシュを選択して Dash で Bake Meshes を検索し、通常のスタティックメッシュに変換してください。\
\
slice 機能は負荷の高い処理なので、不要なときは Enable オプションのチェックを外し、Mesh Pattern をできるだけ高パフォーマンスで使えるようにしてください。&#x20;
{% endhint %}

平面ではなく 3D メッシュを使う場合、パターンはローカル空間で最も大きい平面サーフェスに適用されます。パターンをどこに正確に表示するかを制御したい場合は、Mesh Pattern を平面に使ってから 3D メッシュと特定の面／側面へ投影する方法が使えます。できるだけ良い結果を得るには、平面の角度をサーフェスの角度に合わせ、その後 Max Distance の値を試して、意図した場所以外には投影されないようにしてください。&#x20;

{% embed url="<https://streamable.com/js2euf>" %}

{% hint style="warning" %}
Mesh Pattern の Projection 機能を使うときは、投影メッシュがサーフェスメッシュの下にあるか上にあるかに応じて、flip トグルを使う必要がある場合があります。&#x20;
{% endhint %}

#### カスタムプリセット

付属のプリセットオブジェクトとパターンで用途を満たせない場合は、任意のアセットを使って独自のパターンを作成することもできます。これらはプリセットリストから簡単に保存・利用でき、すべてのプロジェクトで使えます。&#x20;

{% hint style="warning" %}
カスタムプリセットは、可能な限り低い Unreal バージョンで作成するようにしてください。より低い Unreal バージョンでは使用できないためです。&#x20;
{% endhint %}

カスタムプリセットを作成するには、シーン内で 1 つまたは複数のオブジェクトを選択し、それらを Pattern Objects として割り当てるだけです。これを行うと、これらのアセットの配置が、互いの位置関係と Z 軸の両方において重要であることがわかります。オブジェクトを移動、回転、スケールすると、サーフェス上でパターンがどのように調整されるか確認できます。&#x20;

{% hint style="warning" %}
カスタムアセットは 0.0 の Z 位置に配置する必要があります。そうしないと、サーフェスの上に浮いてしまいます。上下に動かして、サーフェスのどのくらい上に表示されるかを調整できます。&#x20;
{% endhint %}

{% embed url="<https://streamable.com/n4xk9w>" %}
Mesh Pattern カスタムプリセット設定
{% endembed %}

{% hint style="warning" %}
Pattern Objects は 90 度単位でのみ回転させると、最良の結果が得られます。&#x20;
{% endhint %}

ほとんどのパターンでは、パターンオブジェクトに対してパターンの大きさを定義するための特別な「area object」が必要になります。&#x20;Mesh Pattern ツール下部のユーティリティボタン「Create Area」で area actor を作成して追加できます。&#x20;

<figure><img src="https://1281618638-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYp9tAkqjcwFDufAaviIa%2Fuploads%2FO3IM0R6IK2f45x7LKukL%2Fimage%20(17).png?alt=media&#x26;token=ebe31b09-ff3b-427e-bd58-13241d224b0a" alt="" width="563"><figcaption><p>赤は散布ポイントで、area actor によって定義された緑の領域に対して相対的です</p></figcaption></figure>

たとえば、area object の調整や、area object に対するアセットの位置によって結果がどのように変わるかを確認できます。&#x20;

{% embed url="<https://streamable.com/jiha9c>" %}

正しい繰り返しでパターンを定義できたら、そこに少し変化を加えたくなるかもしれません。&#x20;パターンを定義するオブジェクトのすぐ近くに別のオブジェクトを配置して Pattern Objects として追加すると、Pattern Details セクションでそれらを変化要素として扱うようツールに指示できます。Variation Threshold を 0 より上に設定し、変化の量と変化アセットの配置を試してみてください。&#x20;

{% embed url="<https://streamable.com/2slctw>" %}
Mesh Pattern 変化の例
{% endembed %}

Pattern Objects とそのパターンに満足したら、このパターンをカスタムプリセットとして保存し、簡単に再利用できるようにできます。プリセットのドロップダウンを開いて Create Pattern ボタンを使うだけで、プリセットをドロップダウンに追加できます。このカスタムプリセットを別のプロジェクトで読み込む際、オブジェクトがそのプロジェクトに含まれていなければ、自動的に追加されます。&#x20;

{% hint style="warning" %}
選択してもパターンが表示されない場合、出力ログに LoadAsset エラーが出ている可能性があります。修正するには、アウトライアーからこれらの新しく追加されたオブジェクトを削除してカスタムプリセットを再度割り当ててください。そうすれば正しく動作します。
{% endhint %}

{% embed url="<https://streamable.com/j7hoob>" %}
カスタム Mesh Pattern プリセットの読み込みと保存
{% endembed %}

#### パターンマテリアルの調整

Mesh Pattern に含まれるプリセットメッシュのマテリアルを調整したい場合は、Material Edit ツールで可能です。ビューポートで Mesh Pattern の出力を選択し、Tools Panel の左上にある Active Tools リストから Material Edit を開いてください。&#x20;

ここでは、Hue、Saturation、Brightness などの基本設定を調整できるほか、Dirt、Snow、Rain のレイヤーを追加できます。さらに新機能として、Material Edit ツールから直接色のバリエーションを追加できるようになりました。デフォルトでは有効で最大強度に設定されており、プリセットをできるだけ良く見せるようになっていますが、オフにしたり、変化の強度を変更したりしたい場合は、Mesh Pattern の Material Edit にある variation 設定で行えます。&#x20;

{% embed url="<https://streamable.com/5eg5af>" %}

## FAQ

<details>

<summary>閉じた後でもプロシージャルメッシュツールを編集できますか？</summary>

はい、もちろん、ベイクしていない、またはツール接続を壊していない限り、Dash でメッシュツールの編集を続けられます。Dash の Edit ボタンで Tools Panel を開き、あとはメッシュを選択するだけです。&#x20;

これで期待どおりにツールが表示されない場合は、Tools Panel で別のツールがピン留めされていないか確認し、さらに Tools Panel 左上のボタンで Active Tools List を開いてツールを見つけられるか確認してください。

</details>

<details>

<summary>これらのメッシュツールの上に散布したり、他の Dash ツールを使ったりできますか？</summary>

たとえば Dash で地形を作成した場合、その上に Surface Scatter で草を散布し、road tool で道路を作成して投影できます。その後、Tools Panel から地形を再調整すると、散布したものも投影した道路ももちろんそれに合わせて調整されます。&#x20;

</details>
