Version: Unity 6.0 (6000.0)
言語 : 日本語
Terrain コライダー
Terrain Collider コンポーネントのリファレンス

Terrain Collider の概要

Terrain ColliderTerrain (地形) の形状に正確に一致するため、非常に正確な Terrain (地形) の衝突シミュレーションを行います。Terrain Collider は、Terrain (地形) に対する最も正確なコライダータイプです。

Terrain (地形) ゲームオブジェクト。右: Terrain Collider。Terrain (地形) ゲームオブジェクトのジオメトリに正確に一致します。
Terrain (地形) ゲームオブジェクト。右: Terrain Collider。Terrain (地形) ゲームオブジェクトのジオメトリに正確に一致します。
Terrain Collider。Terrain (地形) ゲームオブジェクトのジオメトリに正確に一致します。
Terrain Collider。Terrain (地形) ゲームオブジェクトのジオメトリに正確に一致します。

Terrain Collider の構築

プリミティブなコライダーメッシュコライダー とは異なり、Terrain Collider はハイトマップベースです。PhysX は事前定義された形状やメッシュからではなく、対応する Terrain (地形) のハイトマップデータから Terrain Collider を生成します。

PhysX のハイトマップベースのコライダーの詳細については、Nvidia PhysX ドキュメントの Geometry: Height Fields を参照してください。

Terrain Collider は、形状、位置、スケールなど、割り当てられた TerrainData アセットのハイトマップデータに一致する衝突ジオメトリを構築します。この方法の利点は、コライダーの形状を表示されている Terrain (地形) の形状とまったく同じにできるため、より精密で正しい衝突判定ができる事です。

Terrain (地形)、樹木、ディテールのコライダー

Terrain (地形) には、プレハブを追加する ブラシ の種類が 2 つあります。樹木ディテール です。これらのブラシを使用すると、樹木、茂み、岩、他の地形の詳細をすばやく追加できます。詳細については、Terrain (地形) に関するドキュメントの BrushesTrees草とその他のディテール を参照してください。

プレハブを作成するときに必要なコライダーを追加します。樹木ブラシを使用してプレハブを Terrain (地形) に適用する場合は、Terrain Collider を使用してコライダーを有効または無効にする必要があります。Terrain Collider で Enable Tree Colliders を使用して、樹木プレハブのコライダーを切り替えます。

Terrain (地形) と 4 つの樹木。
Terrain (地形) と 4 つの樹木。
Terrain (地形) の衝突ジオメトリ。各樹木の幹の下部を囲む長方形のコライダーに注目してください。これは、元の樹木モデルのプレハブに Box Collider が含まれているためです。
Terrain (地形) の衝突ジオメトリ。各樹木の幹の下部を囲む長方形のコライダーに注目してください。これは、元の樹木モデルのプレハブに Box Collider が含まれているためです。

Terrain Collider は、樹木ブラシで追加したプレハブのコライダーのみを生成します。ディテールブラシで追加したプレハブのコライダーは生成されません。ディテールブラシはプレハブのメッシュのみをレンダリングし、コライダーはレンダリングしないからです。Terrain (地形) ゲームオブジェクト上にコライダーを持たせる場合は、樹木ブラシを使用して追加します。

Unity はランタイムにのみ樹木プレハブのコライダーを生成するため、これらはランタイムに Physics Debug でコライダーのジオメトリを確認するときにのみ表示されます。

Terrain Collider の最適化

Terrain Collider は、Terrain (地形) で使用するコライダーとして、ほとんどのケースで最適な選択です。Terrain Collider は Terrain (地形) の形状を正確に表現し、他のコライダーとの正確な衝突判定を可能にします。また、Terrain Collider は、Terrain (地形) を作成すると自動的に生成されるため、設定と設定時間を最小限に抑えることもできます。

パフォーマンスの改善を求める場合は、Terrain (地形) に平坦な領域が多くある場合、または物理演算の衝突の精度があまり高くなくても問題ない場合にのみ、Terrain (地形) の衝突に他の方法を試すことができます。以下のセクションでは、2 つの代替手段について説明します。

低解像度の Terrain Collider の使用

低解像度の TerrainData を作成し、Terrain Collider に適用できます。

Terrain (地形) の既存の TerrainData を複製し、解像度を下げます。Terrain Collider の TerrainData フィールドを低解像度の TerrainData に設定します。

コライダーと地形が異なる TerrainData を持つことを示す警告が Terrain (地形) の Inspector に表示されますが、意図的に行っている場合は無視してかまいません。

Terrain (地形) からメッシュコライダーを作成

Terrain (地形) のハイトマップをエクスポートし、外部ソフトウェアを使用して簡略化した メッシュコライダー にすることができます。

Terrain Tools パッケージをインストールします。Export Heightmap ツールを使用して、Terrain (地形) のハイトマップをエクスポートします。3D モデリングソフトウェアを使用して、ハイトマップからメッシュを作成します。3D モデリングソフトウェアを使用して、メッシュに対してメッシュ簡略化ルーチンを実行します。メッシュを Unity にインポートして、メッシュコライダーのソースとして使用します。

Terrain コライダー
Terrain Collider コンポーネントのリファレンス
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961