物理调试可视化工具 (Physics Debug Visualiser) 可用于快速检查场景中的碰撞体几何体,并分析常见的基于物理的情形。该工具提供了游戏对象之间是否应相互碰撞的可视化表示。当场景中有许多碰撞体时,或者渲染和碰撞网格不同步的情况下,这会很有用。
有关改善项目物理性能的详细指导,请参阅有关 Physics Profiler 的文档。
To open the Physics Debug window in the Unity Editor, go to Window > Analysis > Physics Debugger.
通过此窗口可以自定义视觉设置,并指定要在可视化工具中显示或隐藏的游戏对象类型。
默认模式为 Hide Selected Items。这意味着每项都出现在可视化工具中,必须勾选每项的复选框才能隐藏该项。要将此模式更改为 __Show Selected Items__,请使用窗口顶部的下拉选单。这意味着可视化工具中不显示任何项,必须勾选每项的复选框才能显示该项。
属性 | 功能 |
---|---|
Reset | 单击此按钮可将 Physics Debug 窗口重置为默认设置。 |
Hide Layers | 使用下拉菜单来确定是否显示选定层中的碰撞体。 |
Hide Static Colliders | 勾选此复选框可从可视化中删除静态碰撞体(不含任何刚体组件的碰撞体)。 |
Hide Triggers | 勾选此复选框可从可视化中删除也是触发器的碰撞体。 |
Hide Rigidbodies | 勾选此复选框可从可视化中删除刚体组件。 |
Hide Kinematic Bodies | 勾选此复选框可从可视化中删除包含__运动__刚体组件(不受物理引擎控制)的碰撞体。请参阅有关刚体组件的文档以了解更多详细信息。 |
Hide Sleeping Bodies | 勾选此复选框可从可视化中删除包含__睡眠__刚体组件(当前无法与物理引擎互动)的碰撞体。请参阅有关刚体组件:睡眠的文档以了解更多详细信息。 |
Collider Types | 使用以下选项可从物理可视化中删除特定碰撞体类型。 |
    Hide     BoxColliders |
勾选此复选框可从可视化中删除盒型碰撞体。 |
    Hide     SphereColliders |
勾选此复选框可从可视化中删除球形碰撞体。 |
    Hide     CapsuleColliders |
勾选此复选框可从可视化中删除胶囊碰撞体。 |
    Hide     MeshColliders     (convex) |
勾选此复选框可从可视化中删除凸面网格碰撞体。 |
    Hide     MeshColliders     (concave) |
勾选此复选框可从可视化中删除凹面网格碰撞体。 |
    Hide     TerrainColliders |
勾选此复选框可从可视化中删除地形碰撞体。 |
Hide None | 单击 Hide None 可清除所有过滤条件并在可视化中显示所有碰撞体类型。 |
Hide All | 单击 Hide All 可启用所有过滤条件并从可视化中移除所有碰撞体类型。 |
Colors | 使用以下设置可定义 Unity 在可视化中显示物理组件的方式。 |
    Static     Colliders |
使用此颜色选择器可定义用何种颜色在可视化中指示静态碰撞体(不含任何刚体组件的碰撞体)。 |
    Triggers | 使用此颜色选择器可定义用何种颜色在可视化中指示也是触发器的碰撞体。 |
    刚体 | 使用此颜色选择器可定义用何种颜色在可视化中指示刚体组件。 |
    Kinematic     Bodies |
使用此颜色选择器可定义用何种颜色在可视化中指示__运动__刚体组件(不受物理引擎控制)。请参阅有关刚体组件的文档以了解更多详细信息。 |
    Sleeping     Bodies |
使用此颜色选择器可定义用何种颜色在可视化中指示__睡眠__刚体组件(当前无法与物理引擎互动)。请参阅有关刚体组件:睡眠的文档以了解更多详细信息。 |
    Variation | 使用滑动条设置介于 0 和 1 之间的值。此设置用于定义所选颜色与随机颜色混合的程度。使用此设置可按颜色直观区分碰撞体以及查看游戏对象的结构。 |
Rendering | 使用这些设置可定义 Unity 渲染和显示物理可视化的方式。 |
    Transparency | 使用滑动条设置 0 到 1 之间的值。此设置用于定义可视化中绘制的碰撞几何体的透明度。 |
    Force     Overdraw |
正常渲染几何体有时可能让碰撞体变得模糊(例如,地板下面的网格碰撞体平面)。勾选 Force Overdraw 复选框可让可视化渲染器在渲染几何体上绘制碰撞体几何体。 |
    View     Distance |
用于设置可视化的视图距离。 |
    Terrain     Tiles Max |
用于设置可视化中地形区块的最大数量。 |
覆盖面板具有更多选项:
属性 | 功能 |
---|---|
Collision Geometry | 勾选此复选框可启用碰撞几何体可视化。 |
Mouse Select | 勾选此复选框可启用鼠标悬停突出显示和鼠标选择功能。如果在可视化工具中有大型游戏对象相互阻碍,此功能可能很有用。 |
可以使用“物理调试”来分析和解决游戏中的物理活动问题。可以自定义在可视化工具中可见的碰撞体或刚体组件类型,从而有助于找到活动源。最有帮助的两个做法是:
仅查看激活的刚体组件:要仅查看处于激活状态并因此使用 CPU/GPU 资源的刚体组件,请勾选 Hide Static Colliders 和 Hide Sleeping Bodies。
仅查看非凸面网格碰撞体:非凸面(基于三角形)网格碰撞体附加的刚体组件即将与另一个刚体或碰撞体发生碰撞时,往往会产生最多的接触。要仅可视化非凸面网格碰撞体,请将窗口设置为 Show Selected Items 模式,单击 Select None 按钮,然后勾选 Show MeshColliders (concave) 复选框。
请参阅 Unity Scripting API 参考中的以下内容:
2017–06–01 Page amended with editorial review
物理调试可视化是 Unity 5.6 中的新增功能