UDN
Search public documentation:

MeshProxyToolJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 ホーム > 「Unreal」エディタとツール > メッシュ プロキシの作成
UE3 ホーム > 静的メッシュ > メッシュ プロキシの作成
UE3 ホーム > レベル編集 > メッシュ プロキシの作成
UE3 ホーム > レベルデザイナー > メッシュ プロキシの作成

メッシュ プロキシの作成


概要


メッシュ プロキシを作成するには、グループに属している複数の静的メッシュを 1 つの静的メッシュにマージします。(これによって、同一のジオメトリをレンダリングするために必要となる描画コールの量を減らすことができます)。さらに、生成されたマージ済みの「プロキシ」自体は、いつでも更新、追加、元の状態への復帰が可能です。このオプションにアクセスするには、メインエディタ内でグループを右クリックして、[Groups] メニューオプションを展開します。

overview.png

注意 : これが表示されるのは、[View] メニューから [Allow Group Selection] (グループの選択を有効化する) を有効にした場合に限ります。

メッシュ プロキシ


メッシュ プロキシとは、元の状態 (マージされていない状態) に戻すことができるマージされたメッシュを意味する用語です。

2 個以上の静的メッシュ アクタを含んでいるアクタであれば、マージの検討対象とすることができます。このプロセスには、グループに入っている静的メッシュのすべてが必要となります。それらをマージすることによって、構成要素であるコンポーネント メッシュすべての結合体であるマージされたメッシュを形成します。複雑度 (したがって、生成時間) は、ユーザーがプロセスで入力する設定値に依存します。必要なメッシュが大きくなるほど、作成する時間が長くなります

マージが完了すると、メッシュがコンテンツブラウザ内で表示され、レベル内において、生成の元となったメッシュが、そのメッシュのインスタンスに置き換えられます。これがプロキシです。生成元となったグループのメンバーであるかぎり、元の形態に戻すことができます。このメッシュプロキシは更新することができます。メッシュプロキシが作成された元となっているメッシュが変更されるか、新たなメッシュが加わった場合には、その新しい情報によってプロキシが再生成されます。プロキシは、純粋に再生成することもできます。(テクスチャのクオリティまたは複雑度を変更するために) プロキシの作成で用いられた設定値をユーザーが変更した場合に再生成されます。このような変更が行われた場合は、プロキシが破壊されて、新たにマージされたメッシュとプロキシが、それに代わって作成されます。

ユーザーが、プロキシ化されたグループの解除を望むか、あるいは、グループからプロキシを削除することを望んだ場合は、元のコンポーネント メッシュに戻したいかどうか (削除の場合は、元のコンポーネント メッシュも削除したいかどうか) について尋ねられます。これによって、マージされたメッシュの他のインスタンスに影響が及ぶことはありません。ただし、グループから削除されると、復帰させることができなくなります。もはやプロキシではなくなるためです。

補足 : その他のアクタタイプは、いつでもグループの一部にすることができます。静的メッシュアクタのみを含めることに限定されません。それらの「その他」のアクタタイプは、プロキシ上の全操作において、プロキシによって安全に無視されます。

メッシュ プロキシのダイアログ


ダイアログが開かれたとき、現在の選択に応じて、次の 4 つの状態のうちのいずれかの状態でダイアログが表示されることになります。

  1. プロキシを含まないグループの選択
    noproxy.png
    • On Screen Size (pixels) - メッシュがビューされるオンスクリーンのサイズです。(単位はピクセル)。
    • Texture Resolution - メッシュ プロキシのために使用するテクスチャのサイズです。
    • Material Type - メッシュ プロキシのために生成するマテリアルのタイプです。現在サポートされているタイプは、Diffuse (ディフューズ) と Diffuse and Normal (ディフューズとノーマル) です。
    • Merge - グループ内のすべての静的メッシュを使って、メッシュ プロキシにマージします (既存のプロキシを置き換えます)。その際、上記の設定値を使用します。
  2. プロキシを含めたグループ選択
    proxy.png
    • Remerge - 以前にマージしたすべての静的メッシュを再マージします (既存のプロキシを置き換えます)。これが必要となるのは、プロキシを構成するコンポーネント メッシュの 1 つが変更される場合か、プロキシの作成で用いられた設定項目を変更したい場合です。ユーザーは、元の設定項目の選択について尋ねられます (利用できる場合)。
    • Unmerge - プロキシを元の状態に戻し、元のコンポーネント メッシュをリストアします。
  3. プロキシと新たに追加された静的メッシュを含めたグループ選択
    proxyplus.png
    オプションは、上記の通りに動作します。
  4. 無効な選択 (例)
    invalid.png
    現在の選択に基づいてマージ / 再マージ / マージ解除の操作を行うことができない場合は、ダイアログが無効になり、その原因について表示するように切り替わります。

    補足 - 現在の選択が変更されると必ずダイアログが自動的に更新されます。

具体例


標準的なレベルのメッシュ

eg1.png

マージされたレベルのメッシュ

eg2.png

静的メッシュアセット

eg3.png

お分かりのとおり、クオリティは、ダイアログで使用する設定値に応じて変化します。使用したいマージ化メッシュが複雑になるほど、生成するのに時間がかかります。上記テストは、より複雑なジオメトリ データを保存するために On Screen Size が 400 (デフォルトの 2 倍) で実行されましたが、Texture Resolution は 1024 (デフォルト) でした。そのため、個々のジオメトリのためのテクスチャすべてを、より小さなスペースに圧縮する必要がありました。 したがって、同一のオブジェクト (または、同じようにテクスチャ化されたオブジェクト) のインスタンスを遠くでマージするために使用するのが理想的です。

同様のレベルのメッシュ

eg4.png

マージされたレベルのメッシュ

eg5.png

_注意 : 何らかのマージ操作が行われた後は、光源処理を再ビルトすることによって、新しいシーンが適切に光源処理されるようにする必要があります。

制約


  • プロキシは、グループの一部として存在しなければなりません。プロキシ化されたグループを別のレベルに移動させることは可能ですが、(グループを解除して) プロキシ自体を動かすことはできません。グループ全体として動かす必要があります。この動作によって、プロキシがアンマージされ、そのグループが新たなレベルに移されるとともに、もともとマージされるのに用いられた設定値で再マージされます。この時点までに、元のメッシュ コンポーネントのうちで更新されたものがあり、プロキシが更新されていなければ、この新たなメッシュに基づいてプロキシがマージされます。
  • さらに、プロキシ化されたグループを解除することができます。その場合、プロキシをコンポーネント メッシュに戻すかどうか尋ねられます。この時点では、戻さないと答えることが許されており、それによってマージされたメッシュが維持されます。ただし、プロキシではなくなり、元の状態に戻すことはできなくなります。
  • マージされたメッシュの追加コピーをレベル内に配置することが現在可能です。そのためには、プロキシが持つのと同じベースとなる静的メッシュ アセットから静的メッシュ アクタを作成します。ただし、これらのコピーは、マージも不可です。要するに、マージ機能、再マージ機能、マージされたメッシュのマージを解除する機能は、最初に作成されたプロキシ上でのみ許されているということになります。したがって、プロキシを再マージすることによって、レベル内でマージされたメッシュのインスタンスを置き換えることにはなりません。生成されるのは新しいメッシュです。
  • メッシュ プロキシの使用が認められないマップをユーザーがロードすると、メッシュ プロキシは、ロード時に元のコンポーネントに戻されます。

SimplygonR


simplygon_logo.jpg

「Simplygon」は、ゲームに適した LOD モデルを自動的に生成するために使用されます。これは、一定のオンスクリーン サイズにおいて、LOD のクオリティを下げることなく、可能な限り多くの情報を削除することによって実現されます。「Simplygon」では、幾何学上の LOD の完全性と LOD 切り替えのビジュアル上のクオリティを保持する独占所有権のあるメッシュ削減メソッドが使用されているため、最上級のゲームの中でそのまま使用できる AutoLOD (自動 LOD) が作成されます。

「Unreal Engine 3」は、「Simplygon」を利用することによって、「Unreal」エディタから出ることなく、ハイクオリティなメッシュ削減を実現しています。開発者は、素早くメッシュを単純化し LOD を生成すると、ただちにマップ内でその結果を見ることができます。