コリジョンとは、ワールド内のオブジェクトの交差を妨げる要素です。 コリジョンがない場合、プレイヤーはメッシュを通り抜けることができます。 コリジョン ボックスは、プレイヤーが素材を収集できるアセットの周りに当たり判定を作成する際の最初のステップでもあります。
既存のコリジョン
使用するメッシュをコンテンツ ブラウザ内でダブルクリックし、[Edit (編集)] ウィンドウを開きます。
メッシュにすでにコリジョンが設定されている場合は、スタティックメッシュ エディタ内の [Show (表示)] メニューにある [Simple Collision (単純なコリジョン)] をオンに切り替えることでそのコリジョンを表示できます。
現在のコリジョンを削除する場合は、[Collision (コリジョン)] > [Remove Collision (コリジョンを削除)] を選択します。
スタティックメッシュのセットアップ
インポートしたメッシュの一部には、すでにコリジョンが設定されている場合があります。スタティックメッシュ エディタを使用して、既存のコリジョン設定を調整したり、スタティックメッシュに新しいコリジョン ボックスを作成したりすることができます。 そうすることで意図したとおりにメッシュとインタラクトできるようになりますが、調整や作成を行わない場合は、プレイヤーが移動するときにジオメトリの一部に引っかかってしまう可能性があります。
メッシュが外部モデリング ソフトウェアで作成したものか、購入したものかにかかわらず、インポートしたスタティックメッシュにはコリジョンを追加できます。 Fab から購入したスタティックメッシュにカスタマイズしたコリジョンを追加するには、[Add as modifiable Unreal Engine asset (変更可能な Unreal Engine アセットとして追加)] を選択します。 この設定を行わない場合は、アセットにあるデフォルトのコリジョンを使用する必要があります。
コリジョンを設定することにより、コリジョン ボックスがカバーするポリゴンの数が減少し、メッシュによるメモリへの影響も軽減できます。 Unreal Editor for Fortnite (UEFN) で設定できるコリジョンには、単純なコリジョンと複雑なコリジョンという 2 つの基本タイプがあります。
単純なコリジョンは、プレイヤーの移動、凸形状、および単純な 3D 形状に使用されます。 単純なコリジョンを使用すると、コリジョン ボックスの影響を受けるポリゴンの数が減少します。 プレイヤーがインタラクトする必要のないオブジェクトには、単純なコリジョンを使用することをお勧めします。
次の画像では、単純なコリジョンが球体の周囲に緑色のコリジョン ボックスで表示されています。 球体の内部には、この形状を形成する一連の紫色のポリゴンがあります。
画像をクリックすると拡大表示されます。
複雑なコリジョンは、プレイヤーがインタラクトする必要がある武器やアセットに使用されます。 複雑なコリジョンを使用しない場合、プレイヤーは椅子に座ったり、オブジェクトを拾ったり、簡単にアセットに登ったり、中を横切ったりすることができません。
次の画像では、木の幹に複雑なコリジョンを使っています。黄色いポリゴンによって複雑なコリジョン ボックスが形成されていることがわかります。 複雑なコリジョン ボックスを使用すると、プレイヤーは木の幹に駆け上ったり、根の上に立ったりすることができます。 木の幹が単純なコリジョン ボックス内にあると、プレイヤーは木の幹に近づくことができません。
画像をクリックすると拡大表示されます。
メモリへの影響を軽減する
複雑なコリジョンを使用する場合に、メッシュのメモリへの影響を軽減する方法がいくつかあります。
スタティックメッシュのセクションごとに、複雑なコリジョンをオフにします。 これは、木などのアセットに役立ちます。 プレイヤーは木の幹とはインタラクトしませんが、その上にある葉の茂みの中を動き回ることができます。
コリジョンにメッシュのポリゴンを使用するよう、メッシュごとに設定します。 この設定は、複雑なメッシュを使用する場合に最適です。
小さなオブジェクトには、[Use Simple as Complex (Simple を Complex として使用)] を設定してメモリを節約します。
[Nanite Fallback (Nanite フォールバック)] 設定を使用して、メモリにカウントされるトライアングルの数を減らします。 この設定では、合計メモリ数に Nanite トライアングルがカウントされません。
[LOD for Collision (コリジョン用 LOD)] を使用してコリジョン ボックスのサイズをオブジェクトの LOD に合わせ、コリジョンを設定します。 これにより、パフォーマンスの低いコンソールやモバイルの場合にメモリが節約されます。
[LOD for Collision] は、[Nanite Fallback] 設定をオンにした場合にのみ使用できます。 このオプションは、複雑なコリジョンでのみ使用可能です。
単純なコリジョンを追加する
メッシュにコリジョンを設定していない場合は、その周辺にシンプルな形状を簡単に加えることができます。
コンテンツ ブラウザ内でスタティックメッシュのサムネイルをダブルクリックし、エディタを起動します。
スタティックメッシュ エディタ 内で [Collision] ドロップダウン メニューを展開し、上部にある 3 つのオプションから 1 つを選択します。
新しく作成されたコリジョンにはウィジェットが表示され、これを使ってコリジョン形状を平行移動、回転、スケールすることができます。
すでにコリジョンが設定されているメッシュに別のコリジョンを加えた場合は、元のコリジョンが置き換えられるのではなく、新たなコリジョンがメッシュに追加されます。 元のコリジョンを置き換える場合は、そのコリジョンを削除してください。
複雑なコリジョンを追加する
メッシュに正確なコリジョンを加えたい場合は、[Collision] ドロップダウン メニューにある他のオプションを使用できます。
K-DOP
これらのオプションは、K-DOP 単純コリジョン ジェネレーターと呼ばれます。 K-DOP とはバウンディング ボリュームの一種で、K は座標軸に平行な平面の数を表し、DOP は「discrete oriented polytope (離散有効ポリトープ)」の略語です。 K-DOP では K 軸に平行な平面を受け取り、それらをメッシュにできるだけ近づけます。
スタティックメッシュ エディタでは K が次のようになります。
10 - 4 つのエッジが面取りされたボックス - X、Y、または Z に平行なエッジを選択できます。
18 - すべてのエッジが面取りされたボックス。
26 - すべてのエッジと隅が面取りされたボックス。
メッシュは、それぞれ 10-DOP、18-DOP、26-DOP で次のようになります。
自動凸型コリジョン
[Collision] ドロップダウン メニューから [Auto Convex Collision (自動凸型コリジョン)] を選択した場合は、エディタ画面の右下に [Convex Decomposition (凸型分解)] パネルが表示されます。
[Hull Count (ハル カウント)] では、コリジョン メッシュを表現するために可能な限り少数のプリミティブを生成します。 [Max Hull Verts (マックス ハル頂点)] では、コリジョン メッシュに含まれる頂点の数を増減します。 これらの値を高く設定するとコリジョンが正確になりますが、より複雑になり、メモリの消費量も高まります。 [Apply (適用)] をクリックして変更を適用します。
上の画像の設定値を適用すると、次の画像のようになります。
単純な形状を組み合わせる
複雑なコリジョンを設定する別の簡単な方法として、シンプルな形状のコリジョン メッシュを複数使用するやり方もあります。
各種の単純なコリジョン メッシュを追加し、ウィジェットを使ってそれぞれの形状を平行移動、回転、スケールして配置します。
Toon Cat FREE - Omabuarts Studio 提供。CC BY 4.0 によってライセンスされています。