スプラッシュスクリーン
Physics 2D Settings

Physics Manager

3D 物理のグローバル設定を行うために、Physics Manager (物理マネージャー) を使用します。物理マネージャーにアクセスするには、メニューバーから Edit > Project Settings > Physics の順に選択します。2D 物理にグローバル設定を適用するには、 2D 物理設定 を使用します。

物理マネージャーの設定によって、物理的シミュレーションの精度の限度が決められます。一般的には、シミュレーションの精度を上げると、処理負荷が高くなります。ですから、物理マネージャーの設定で精度とパフォーマンスとの釣り合いを調整できます。詳細はマニュアルの Physics を参照してください。

インスペクターウィンドウに表示される物理マネージャー
インスペクターウィンドウに表示される物理マネージャー
プロパティー 説明
Gravity すべての リジッドボディコンポーネントに適用される重力量。x, y, z 軸を使用して設定します。現実的な重力設定にするには、Y 軸を負の数にします。重力は、ワールド単位/ (秒 ^2) で定義されます。
注意 重力を増加すると場合によっては衝突の安定維持のために Default Solver Iterations も増加する必要があります。
Default Material このフィールドでは、個々のコライダーに何も割り当てられていない場合に使用するデフォルトの Physics マテリアルを定義します。
Bounce Threshold このフィールドでは、速さの値を設定します。相対速度が指定した値未満のとき、 衝突する 2 つのオブジェクトは跳ね返りません。この値により、ジッタも減るため、低すぎる値を設定することはお勧めしません。
Sleep Threshold このフィールドでは、その値以下になると、キネマティックでないリジッドボディ (すなわち、物理システムによって制御されていないリジッドボディ) がスリープ状態になることがあるグローバルエネルギーの閾値を設定します。リジッドボディがスリープ状態のときはフレーム毎に更新されるわけではないため、リソースの負担は少なくなります。 リジッドボディの運動エネルギーを質量で割った値がこの閾値を下回る場合、スリープの候補となります。
Default Contact Offset このフィールドで、衝突検知システムが、接触判定をするために使用する距離の指定をします。この値は正の値でなくてはならず、また、もし 0 に近すぎる値を設定するとジッタの原因になります。デフォルト値は 0.01 です。コライダーは、Contact offset 値の合計値よりもこの距離が小さい場合のみ、衝突接触判定を生成します。
Default Solver Iterations ソルバーは小さな物理演算エンジンのタスクで、ジョイントの動きや重なり合うリジッドボディコンポーネント間の接触の管理など多くの物理的な相互作用を決定します。各物理的フレームで Unity が行うソルバー処理の数を決定するには Default Solver Iterations を使用します。この値はソルバー出力の品質に影響し、デフォルトでないTime.fixedDeltaTime を使用する場合は、プロパティーを変えることが推奨されます。そうでないと、設定に余計負荷がかかります。通常、ジョイントや接触で発生するジッタを削減するために使用します。
Default Solver Velocity Iterations このフィールドで、ソルバーが各物理フレームでいくつの速度の処理を行うかを設定します。ソルバーが行う処理数が増えるほど、リジッドボディが跳ね返った後の流出速度の精度は高くなります。ジョイントしたリジッドボディコンポーネントで問題が発生する場合、または、ラグドールが衝突後に動きすぎる場合に、この値を増やしてみてください。
Queries Hit Backfaces 有効にすると、物理的クエリ (Physics.Raycast など) がメッシュコライダーの裏側の三角の衝突を検知します。この設定は、デフォルトで無効になっています。
Queries Hit Triggers 有効にすると、テスト体 (レイキャスト、 スフィアキャスト、 スフィアテストなど) がトリガになっているコライダーと接触するとき、ヒットを返します。個々のレイキャストは、この動作をオーバーライドすることができます。この設定は、デフォルトで有効になっています。
Enable Adaptive Force “adaptive force” は、積み重なったオブジェクト間で力を伝達する方法に影響します。このボックスにチェックすると、 adaptive force を有効にします。この設定は、デフォルトで無効になっています。
Enable PCM このボックスにチェックを入れると、物理エンジンの永続的なコリジョン (PCM) 接触生成メソッドが有効になります。つまり、各物理フレームごとに再生される接触数が少なくなり、より多くの接触データが他のフレームと共有されます。PCM 接触の生成パスもより正確であり、通常は、より良い衝突フィードバックを生成します。詳細については、Nvidia documentation on Persistent Contact Manifold を参照してください。
注意: Unity 5.5 より前は、Unity は分離軸定理に基づいて SAT と呼ばれる接触生成メソッドを使用していました (dyn4j.org’s guide to SAT を参照)。PCM のほうが効率的ですが、古いプロジェクトでは、物理計算を調整する必要がないため、SAT の使用を続けるほうが簡単な場合があります。PCM はわずかに違うバウンスを起こし、コンタクトバッファ (つまり、OnCollisionEnterOnCollisionStayOnCollisionExit に渡された衝突インスタンスでできた配列) では無駄な接触が少なくなります。
Auto Simulation 物理シミュレーションを自動で走らせるか、または、明示的な制御を許可するか。
Auto Sync Transforms Transform コンポーネントが変わるたびに、トランスフォームを物理システムと同期させるかどうか。
Layer Collision Matrix これを使って、レイヤーベースの衝突検出 の挙動を定義します。



  • 2017–05–18 限られた 編集レビュー で修正されたページ

  • 5.5 で追加された設定: Default Solver Iterations, Default Solver Velocity Iterations, Queries Hit Backfaces, Enable PCM

スプラッシュスクリーン
Physics 2D Settings