ウォータータイト ジオメトリの場合、プロキシ ジオメトリ ツールは、内壁、家具、閉じた構造内のものなど、アクセスできない構造を自動的に破棄します。 目的の結果を得るには、これを念頭に置いてソース ジオメトリをビルドまたは変更する必要がありますが、ゲーム制作に制約があることから、必ずしも利用できるわけではありません。ウォータータイトに近いソース ジオメトリから効率的にプロキシ LOD の生成を行うため、ProxyLOD ツールには、レベルセットベースの膨張および侵食などの手法を使用してギャップを埋めるオプションがあります。予想されるユースケースは、主に離れた場所にある建物のドアと窓です。以下の手順では、生成されたジオメトリに生じる可能性のあるギャップを自動的に埋めるためのプロキシ ジオメトリ ツールの設定方法について説明します。

ステップ
以下のセクションでは、プロキシ ジオメトリ ツールによって生成されたスタティック メッシュ上で、オープン ジオメトリが閉じていることを確認する方法について説明します。
-
まず、閉じたい開口部がある構造体またはオブジェクトを見つけます。 この例で構築した小さな家は、スターター コンテンツに含まれるスタティック メッシュのみを使用しています。
-
次に、[Window (ウィンドウ)]>[Developer Tools (デベロッパーツール)]>[Merge Actors (アクタをマージ)] を選択して、[Merge Actors (アクタをマージ)] ツールを開きます。
-
レベル内で、新しいジオメトリを生成したいオブジェクトを構成している Static Mesh アクタをすべて選択します。
-
[Merge Actors (アクタをマージ)] ツールで、 2 番目 のアイコンをクリックして プロキシ ジオメトリ ツールにアクセスし、 [Proxy Settings] を展開します。
-
[Proxy Settings] で、[Merge Distance] の値を「120」に設定します。
[Merge Distance] パラメータによって、ギャップを埋める距離を プロキシ ジオメトリ ツールに伝えます。 数値が小さいほど埋められる間隔が狭くなり、数値が大きいほどそれらの間隔は広くなります。
-
次に、[Merge Actors (アクタをマージ)] ボタンをクリックして、[コンテンツ ブラウザ] に新しく作成されたスタティック メッシュの名前と場所を入力します。 次に、[Save (保存)] ボタンをクリックして、マージ処理を開始します。
-
マージが完了したら、コンテンツ ブラウザで新しく作成されたスタティック メッシュを見つけ、それをダブルクリックして [Static Mesh Editor (スタティックメッシュ エディタ)] で開きます。
-
選択したオブジェクトによっては、(以下の図に示すように) プロキシ ジオメトリ ツールが、必要以上に膨張してしまう新しいジオメトリを作成する問題が発生することがあります。
-
このような問題を解決するには、まずオブジェクトを構成するすべてのスタティック メッシュを再選択します。 次に、[Merge Actors (アクタをマージ)] ツールで、[Merge Distance] を「175.」に増やします。 次に、[Transfer Distance Override] を有効にして、値を「100」に設定します。
どのような値を使うべきか知るためには、[Output Log (アウトプットログ)] を確認してください。 [Output Log (アウトプットログ)] には、Spatial Sampling Distance (再メッシュ化用のボクセル サイズ) と Transfer Distance Override (Material Distance) に使用される値が表示されます。 どの値が使用されているかがわかったら、目的の結果に応じてこれらの値を増減できます。

- 完了したら、[Merge Actors (アクタをマージ)] ボタンをクリックしてプロセスを再開します。 プロキシ ジオメトリの生成が完了すると、オブジェクトはこのようになります。

ジオメトリの設定方法によっては、満足のいく結果が得られるまで、[Merge Distance] と [Transfer Distance Override] の値を変更し、上記のプロセスを数回繰り返す必要があります。
最終結果
プロキシ ジオメトリを生成する各オブジェクトには、[Merge Distance] と [Transfer Distance Override] の両方でわずかに異なる値が必要になるため、最良の結果を得るにはある程度の時間とイテレーションが必要です。 以下の画像では、 [Merge Distance] と [Transfer Distance Override] が 0、100、200、300 の値に設定されたときの結果を比較しています。




[Merge Distance] と [Transfer Distance Override] が 0、100、200、 300 の値に設定されたときの結果を比較