Physics Debug ウィンドウを使用して、シーン内の 3D 物理アクティビティの視覚的な表示を設定し作成します。これは、シーンビュー に表示されます。
Unity エディターで Physics Debug ウィンドウを開くには、Window > Analysis > Physics Debugger を選択します。
Physics Debugger は、シーンビューに Physics Debug パネル を挿入し、以下のタブを含む Physics Debug ウィンドウを開きます。
Physics Debug ウィンドウをデフォルト設定に戻すには、Reset を選択します。
プロジェクトにおける物理性能の向上に関する詳細は、Physics プロファイラー に関するドキュメントを参照してください。
Unity で Physics Debug ウィンドウを開くと、Physics Debug パネルがシーンビューに表示されます。デフォルトでは、シーンビューの右下に表示されますが、クリックアンドドラッグで移動できます。
プロパティ | 説明 |
---|---|
Collision Geometry | Collision Geometry を有効にすると、衝突情報がシーンビューに表示されます。Collision Geometry を Disable にすると、シーンビュー上の衝突情報が非表示になります。 |
Mouse Select | これを有効にするとマウスオーバーによる強調とマウス選択を可能にします。これは、大きなゲームオブジェクトが視覚的に互いに互いを遮っているときに役立ちます。 |
Info タブには、選択したすべての Rigidbody または ArticulationBody ゲームオブジェクトに関するデータがあります。このデータを使って、物理演算ボディの動作を監視することができます。このタブのプロパティ値は編集できません。スクリプトで変更することはできますが、推奨しません。たいていの場合、値を変更するには、物理演算システムで力を適用することを推奨します。
特定のゲームオブジェクトを Info タブに永久にドッキングさせておくには、そのゲームオブジェクトの Lock を有効にします。ロックできるゲームオブジェクト数には制限はありません。Number of items per row プロパティを使って、Info タブを操作しやすいように配置できます。
Info タブには常に以下のプロパティが表示されます。
プロパティ | 説明 |
---|---|
Number of items per row | 選択したゲームオブジェクトを Info タブの一番上の行にいくつ水平に表示するかを定義します。 デフォルトでは、複数のゲームオブジェクトを選択またはロックする場合、Unity はそれらをすべて縦に表示します。しかし、代わりに水平に並べることができます。Number of items per row を使って、横一列にいくつのゲームオブジェクトを表示するかを定義します (最大 10)。 選択されたゲームオブジェクトやロックされたゲームオブジェクトの数がこの数を超えると、新しく選択されたゲームオブジェクトが一番上の行の下の新しい行に表示されます。 ゲームオブジェクトは常に選択された順に Info タブに表示されます。このプロパティのデフォルト値は 1 です。 |
Tracked objects | 現在 Info タブに表示されている一意のゲームオブジェクトの総数を表示します。これには選択されたゲームオブジェクトとロックされたゲームオブジェクトが含まれます。重複は含まれません。 |
Clear locked objects | Clear locked objects を選択して、全てのゲームオブジェクトの Lock を無効にします。これにより、Hierarchy ウィンドウで選択されていないゲームオブジェクトが Info タブから削除されます。 |
物理演算ボディ (つまり Rigidbody や ArticulationBody) を持つゲームオブジェクトを Hierarchy で選択すると、Info タブに以下のプロパティが表示されます。
プロパティ | 説明 |
---|---|
GameObject | 以下のプロパティが参照する、選択またはロックされたゲームオブジェクトの名前を表示します。 |
Draw Gizmos for | Physics Debug がギズモを示す物理演算プロパティを選択します。 |
- Center of Mass | 物理演算ボディのグローバルの質量中心の位置を示すギズモを表示します (World Center of Mass を参照)。 |
- Inertia Tensor | 物理演算ボディの慣性テンソル (Inertia Tensor 参照) の回転とスケールを示すギズモを表示します。 |
Lock | Lock を有効にすると、ゲームオブジェクトが Hierarchy ウィンドウで選択されなくても、Info タブに表示し続けます。 |
Speed | 物理演算ボディが移動する速度のことで、単位はメートル毎秒 (m/s)。 |
* Velocity | 各ベクトルに沿った物理演算ボディの速度で、単位はメートル毎秒 (m/s)。 |
** AngularVelocity** | 各ベクトルに沿った物理演算ボディの速度で、単位は度毎秒。 |
Inertia Tensor | 物理演算ボディの慣性テンソル。質量と同様に、慣性テンソルは物理演算ボディを動かすのにどれだけの力やトルクが必要かを定義します。ただし、質量が直線運動に影響するのに対し、慣性テンソルは回転運動に影響します。Inertia Tensor 値が高ければ高いほど、物理演算ボディをその軸上で回転させるにはより高いトルクが必要になります。 |
Inertia Tensor Rotation | 慣性テンソルの回転。デフォルトでは、Unity は物理演算ボディにアタッチされているすべてのコライダーに基づいて、慣性テンソルの回転を自動的に計算します。 |
Local Center of Mass | 各ベクトルに沿った物理演算ボディの重心のローカル位置。スクリプトで重心を変更するには、centerOfMass を使います。Unity はコライダーの配置に基づいて変更することもできます。 |
World Center of Mass | 各ベクトルに沿った物理演算ボディの重心のグローバルな位置。スクリプトで重心を変更するにはworldCenterOfMass を使います。Unity はコライダーの配置に基づいて変更することもできます。 |
Sleep State | 物理演算ボディのスリープ状態。物理演算ボディが起きていて物理計算に含まれている場合は Awake 表示されます。物理演算ボディがスリープ状態で物理計算に含まれない場合はAsleep と表示されます。 |
Sleep Threshold | 物理演算ボディのエネルギーしきい値で、これを下回ると物理エンジンはそのボディを物理演算の更新に含まなくなります。デフォルトでは、これは グローバルな Physics 設定で定義された Sleep Threshold 値です。 |
Max Linear Velocity |
maxLinearVelocity で定義される、物理演算ボディが到達できる最大の直線速度。 |
Max Angular Velocity |
maxAngularVelocity で定義される、物理演算ボディが到達できる最大の回転速度。 |
Solver Iterations | 物理システムソルバーがこの物理演算ボディに対して実行する必要のある反復回数。 |
Solver Velocity Iteration | 物理システムソルバーがこの物理演算ボディに対して実行する必要のある速度の反復回数。これらは、接触の弾性を考慮して、重なり合うゲームオブジェクトの出口速度を正しい値に近づけます。 |
Body Index | ツリー内の連結ボディのインデックス。このプロパティは、連結ボディにのみ表示されます。 |
Filtering タブには、Physics Debug 可視化に示される物理演算的要素を設定するプロパティがあります。
プロパティ | 説明 |
---|---|
Show Physics Scene | 一度に 複数の物理シーン をロードしている場合、どの物理シーンを可視化に含むかを選択します。 |
Show Unity Scene | 一度に 複数のシーン をロードしている場合、どの Unity のシーンを可視化に含むかを選択します。 |
Show Layers | 可視化に示す レイヤー を選択します。 |
Show Static Colliders | Show Static Colliders を有効にすると、Rigidbody コンポーネントを持たないコライダーの可視化が示されます。Show Static Colliders を無効にすると、Rigidbody コンポーネントを持たないコライダーの可視化表示が消去されます。 |
Show Triggers | トリガーであるコライダーの可視化を示すには、Show Triggers を有効にします。トリガーであるコライダーの可視化を消去するには、Show Triggers を無効にします。 |
Show ignored files | Rigidbody コンポーネントの可視化を示すには、Show Rigidbodies を有効にします。ShowRigidbodies を無効にすると、Rigidbody コンポーネントの可視化が消去されます。 |
Show Kinematic Bodies | Show Kinematic Bodies を有効にすると、Kinematic Rigidbody コンポーネントを持つコライダーの可視化が示されます。Show Kinematic Bodies を無効にすると、Kinematic Rigidbody コンポーネントを持つコライダーの可視化が消去されます。 |
Show Articulation Bodies | ArticulationBody コンポーネントの可視化を示すには、Show Articulation Bodies を有効にします。ArticulationBody コンポーネントの可視化を消去するには、Show Articulation Bodies を無効にします。 |
Show Sleeping Bodies | Show Sleeping Bodies を有効にすると、Sleeping Rigidbody コンポーネントを持つコライダーの可視化が示されます。Show Sleeping Bodies を無効にすると、Sleeping Rigidbody コンポーネントを持つコライダーの可視化が消去されます。 |
Collider Types | このオプションを使って物理演算可視化の指定したコライダータイプを非表示にできます。 |
- Show BoxColliders | Show BoxColliders を有効にすると、Box Colliders (ボックスコライダー) の可視化が示されます。Show BoxColliders を無効にすると、ボックスコライダーの可視化が消去されます。 |
- Show SphereColliders | Show SphereColliders を有効にすると、Sphere Colliders (スフィアコライダー) の可視化が示されます。Show SphereColliders を無効にすると、スフィアコライダーの可視化が消去されます。 |
- Show CapsuleColliders | Show CapsuleColliders を有効にすると、Capsule Colliders (カプセルコライダー) の可視化が示されます。Show CapsuleColliders を無効にすると、カプセルコライダーの可視化が消去されます。 |
- Show MeshColliders (convex) | Show MeshColliders (convex) を有効にすると、Is Convex プロパティが有効になっている Mesh Colliders (メッシュコライダー) の可視化が示されます。Show MeshColliders (convex) を無効にすると、Is Convex プロパティが有効になっているメッシュコライダーの可視化が消去されます。 |
- Show MeshColliders (concave) | Show MeshColliders (concave) を有効にすると、Is Convex プロパティが無効になっている Mesh Colliders (メッシュコライダー) の可視化が示されます。Show MeshColliders (concave) を無効にすると、Is Convex プロパティが無効になっているメッシュコライダーの可視化が消去されます。 |
- Show TerrainColliders | Show TerrainColliders を有効にすると、Terrain Colliders (Terrain (地形) コライダー) の可視化が示されます。Terrain (地形) コライダーの可視化を削除するには、Show TerrainColliders を無効にします。 |
- Show None | すべてのフィルタリング基準を消去し、すべてのコライダーを可視化から削除するには、Show None を選択します。 |
- Show All | すべてのフィルタを有効にし、すべてのコライダーの可視化を示すには、Show All を選択します。 |
Rendering タブには、Unity が物理演算可視化をどのようにレンダリングして示すかを設定するプロパティがあります。
プロパティ | 説明 |
---|---|
Static Colliders | 可視化で静的コライダー (Rigidbody コンポーネントを持たないコライダー) を示す色を選択します。 |
Triggers | 可視化でトリガーでもあるコライダーを表す色を選択します。 |
##Rigidbody | 可視化で Rigidbody コンポーネントを表す色を選択します。 |
Kinematic Bodies | 可視化からキネマティックな Rigidbody コンポーネントを表す色を選択します。物理演算システムはキネマティックな Rigidbody コンポーネントを制御しません。 |
ArticulationBody | 可視化で Articulation Body コンポーネント を表す色を選択します。 |
Sleeping Bodies | 可視化から、Sleeping Rigidbody コンポーネント(現在、物理エンジンと連動していません) を表す色を選択します。 |
Variation | 選択した色がどの程度ランダムな色とブレンドされるかを定義します。コライダーを色で視覚的に分けたり、ゲームオブジェクトの構造を見たりするのに使います。値は 0 から 1 の間で、デフォルトでは 0.15 に設定されています。 |
Transparent | 可視化で描画される衝突ジオメトリの透明度を設定します。値は 0 から 1 の間で、デフォルトでは 0.5 に設定されています。 |
Force Overdraw | Force Overdraw を有効にすると、可視化で、コライダーのジオメトリがレンダージオメトリの上に表示されます。これは、レンダージオメトリがコライダーの可視化を隠している場合に便利です。Force Overdraw を無効にすると、コライダージオメトリがカメラに関連して表示されます。 |
View Distance | 可視化の表示距離を設定します。デフォルトでは 1000 に設定されています。値は単位で測定され、Unity のデフォルトでは 1 メートルと仮定されます。 |
Terrain Size | 可視化の Terrain (地形) タイルの最大数を設定します。デフォルトでは 60 に設定されています。 |
Gizmos settings | Info タブが制御する Physics Debug ギズモを設定します。 |
- Constant screen size | Constant screen size を有効にすると、Physics Debug ギズモがカメラからどの距離にあっても、画面上に同じサイズで表示されるようにします。Constant screen size を無効にすると、ギズモのサイズが透視投影に応じて拡大縮小されます。 |
- Inertia Tensor scale | Inertia Tensor のベクトル 3 を乗じる値を定義する。これは、慣性テンソルが特に大きい場合に有用です。例えば、ベクトルの成分の比率を視覚化して観察する必要がある場合などです。 |
Contacts タブには、Physics Debug の可視化に示されるコンタクトデータと、コンタクトのタイプ別に使用される色を設定するプロパティがあります。
プロパティ | 説明 |
---|---|
Show Contacts | 接触の可視化を示すには、Show Contacts を有効にします。 |
- Show All Contacts |
Show All Contactsを有効にすると、Physics Debug 可視化ですべての衝突接触データの可視化が示されます。Show All Contacts を無効にすると、Physics Debug 可視化に示される接触データを制限できます。 Show All Contacts を無効にすると、以下のコンタクトのみが可視化に示されます。 - OnCollisionEnter 、OnCollisionSay 、またはOnCollisionExit からメッセージを受信する MonoBehaviour スクリプトを持つコライダー- providesContact プロパティが true に設定されているコライダー |
- Show Impulse | Show Impulse を有効にすると、接点インパルスを表す矢印が可視化されます。インパルスの可視化を削除するには、Show Impulse を無効にします。 |
- Show Separation | Show Separation を有効にすると、接点の分離を表すセグメントとディスクが可視化されます。分離の可視化を削除するには、Show Separation を無効にします。 |
- Use Filtering settings | Use Filtering settings を有効にすると、Filtering タ ブの設定を使用して、受け身の接触の可視化をフィルタリングします。Use filtering settings を無効にすると、Contacts タブの設定のみが使用されます。 |
Contact colors | Unity が衝突接触データを示すために可視化で使用する色を選択します。 |
Use varied colors | Use varied colors を有効にすると、各接触コライダーペアにランダムな色が使用されます。Use varied colors を無効にすると、以下のプロパティで定義された 3 つの色 (Contact color、Contact separation color、Contact impulse color) が使用されます。 |
Contact color | コンタクトを表す色を選択します。これは、接点を始点とし、接点法線に向いた矢印として可視化表示に表示されます。 |
Contact separation color | 接触分離を表す色を選択します。これは可視化ではセグメントとディスクとして表示されます。 |
Contact impulse color | 接触インパルスを表す色を選択します。これは、インパルスの長さに等しい長さで、法線方向を指す矢印として可視化に示されます。 |
Queries タブには、Physics Debug 可視化に示されるクエリタイプとその表示方法を設定するプロパティがあります。PhysX クエリについては、NVIDIA PhysX のScene Queries と Geometry Queries のドキュメントを参照してください。
プロパティ | 説明 |
---|---|
Show queries | 物理クエリの可視化を示すには、Show queries を有効にします。 |
Query color | 物理クエリを示すために Unity が可視化で使用する色を選択します。 |
Show shapes | Physics Debug の可視化に示すクエリ形状を選択します。クエリ形状を有効にすると、その形状のクエリが可視化で表示されます。クエリ形状を無効にすると、その形状のクエリを可視化から削除します。 オプションは以下の通りです。 - Box (ボックス) 形状のクエリ - Capsule (カプセル) 形状のクエリ - Collider (コライダー) 形状のクエリ - Ray** 形状のクエリ |
Show types | 可視化に示すクエリタイプを選択します。クエリタイプを有効にすると、そのタイプのクエリが可視化で示されます。クエリタイプを無効にすると、そのタイプのクエリを可視化から消去します。PhysX クエリについては、NVIDIA PhysX の Geometry Queries のドキュメントを参照してください。 オプションは以下の通りです。 - Overlap (重複) クエリ - Check (確認) クエリ - Cast (キャスト) クエリ |
Max Queries | Physics Debug が一度に可視化表示できるクエリの最大数を定義します。デフォルトでは 100 に設定されています。 |
Show None | すべてのクエリ形状を消去し、すべてのフィルタリング基準を可視化から消去するには、Show None を選択します。 |
Show All | すべてのフィルターを有効にし、可視化で、すべてのクエリ形状とタイプを示すには、Show All を選択します。 |