Version: Unity 6.0 (6000.0)
言語 : 日本語
リジッドボディの物理演算の概要
リジッドボディへの一定力の適用

リジッドボディコライダーの設定

コライダーはリジッドボディの物理的な境界を定義します。衝突の発生を可能にするには、ゲームオブジェクトに、リジッドボディと共にコライダーを追加する必要があります。

リジッドボディが別のリジッドボディと衝突した場合、物理演算エンジンは、両方のゲームオブジェクトがコライダーを持っている場合にのみ衝突の計算を行います。リジッドボディだけを持ちコライダーを持たないゲームオブジェクトは、他のゲームオブジェクトを通り抜け、Unity の衝突計算には含まれません。

コライダーはリジッドボディの物理的な境界を定義します
コライダーはリジッドボディの物理的な境界を定義します

リジッドボディ同士が衝突した場合、それらの反応は、各リジッドボディの相対的な Mass によって決定されます。

詳細については、衝突を参照してください。

凸と凹のコライダージオメトリ

PhysX 物理演算システムでは、キネマティックでないリジッドボディに配置するコライダーは、凹状ではなく凸状である必要があります。Unity のプリミティブ形状は全て凸状です。ただし、Unity ではデフォルトでメッシュコライダーは凹状と見なされます。

キネマティックでないリジッドボディにデフォルトのメッシュコライダーを適用すると、ランタイムにエラーがスローされます。キネマティックでないリジッドボディが物理ベースの力を受けるようにするには、メッシュコライダーを凸状にするように Unity に指示する必要があります。これを行うには、メッシュコライダーの Convex プロパティを有効にしてください。Convex を有効にすると、Unity は、関連するメッシュに基づいて、凸状のコライダー形状 (ハルと呼ばれます) を自動的に計算します。ただし、メッシュの凸状ハルは元の形状の近似に過ぎないため、シミュレーションが不正確になる可能性があります。

より正確な衝突シミュレーションを行うには、以下のいずれかの方法が可能です。

  • DCC ツールを使ってメッシュをいくつかの部分に分割することで、Unity が凸状ハルの計算を行う時に、全体の形状がより正確に表されるようにする。
  • いくつかのプリミティブコライダーを使用して、メッシュと同じ形状の複合コライダーを手動で構築する。
  • Unity の V-HACD など、任意のメッシュの凸状近似を計算する自動ツールを使用する。

キネマティック (つまり物理ベースの力を受けない) リジッドボディには、どのようなコライダーでも適用できます。

リジッドボディの物理演算の概要
リジッドボディへの一定力の適用