Choose your operating system:
Windows
macOS
Linux
スタティックメッシュ、スケルタルメッシュなどの他のタイプのジオメトリのように、スプライト はワールドの他のジオメトリとのコリジョンを計算するために使用する形状を定義できます。
コリジョンのドメイン
コリジョンを計算するために使用する方法は、 Sprite Collision Domain プロパティを使用して定義します。設定は 3 種類あります。
コリジョンのタイプ |
説明 |
---|---|
None |
コリジョンのジオメトリは生成されません。純粋に装飾目的のスプライトで使用してください。 |
Use 2D Physics |
Box2D で使用するコリジョン ジオメトリを生成するための 実験段階 のオプションです。現時点での制約の詳細は 2D コリジョン をご覧ください。 |
Use 3D Physics |
スプライトで定義される 2D コリジョンのジオメトリは、Collision Thickness 単位の深さを使用して垂直軸に押し出され、3D のコリジョン ジオメトリを作ります。 |
コリジョン ジオメトリ
コリジョン ジオメトリの Geometry Type 設定は、 コリジョン ジオメトリを生成するために使用する計算のタイプを指定します。以下の設定を利用できます。
タイプ |
説明 |
---|---|
Source Bounding Box |
スプライト用の ソース領域 |
Tight Bounding Box |
|
Shrink Wwrapped |
(実験段階 |
Fully Custom |
|
Diced |
小さな正方形に分割し、最終ジオメトリで空でない正方形だけを含めるようにします。 |
Edit Collision (コリジョン編集) モードでは、コリジョン ジオメトリが表示されます。ビューポートで調整可能であり、編集モードを完全にカスタム仕様に設定することができます。
ツールバー ボタンを使用して、ポリゴンを追加したり、頂点をピクセル グリッドにスナップすることができます。新しい頂点を追加するには、エッジを選択し、 Shift+クリック します。選択した頂点は [Delete (削除)] を押して削除できます。
2D コリジョン
初期の 実験的な Box2D 2.3.1 の統合と、関連するさまざまな変更を実施しました。 依存関係をインストールする必要があります。この機能は、全くサポートされていません。ドキュメント化されていないプロトタイプです。したがって、扱いには十分注意し、本番環境では使用しないでください。 現在のビルドには、 Win32 および Win64 の Box2D のプリコンパイルされたライブラリだけが含まれます。 そのため、2D コリジョンは他のプラットフォームでは機能しません。スプライトで 2D ドメインが選択されている場合、コリジョンの検知と反応は自動です。 しかし、ポイント トレースのようなクエリは、Physics プロジェクト設定で個別に有効にしなければなりません (bEnable2DPhysics オプション)。
この統合では、コリジョンの検知および反応 (アンリアルのコリジョン チャンネル/フィルタリングを含む)、剛体シミュレーション、 レイキャストが実装されました。非ゼロ範囲のクエリ、スイープのテスト、オーバーラップのテストは未実装です。例えば、 bSweep=true の CharacterMovementComponent および MoveComponent は、こうしたタイプのクエリに依存し、まだ正しく機能していません。
長期的な統合戦略では、第一級オブジェクトにして、3D シーンで使用される技術と知識と同じものが、2D シーンでも直接適用されるようにします。 例えば、2D と 3D で分けるのではなく、 ひとつのオーバーラップ イベントだけが存在するようにします。3D レイキャストは Box2D に実装済みです。 '面内' (2D 'ワールド' 内でゲームプレイをトレース) または '平面に垂直' (指 / マウス カーソルの下にあるオブジェクトを判断するための Touch 入力のトレースなど) の両方をトレースできます。 これにより、適切なヒット結果の位置と法線も提供します。