52.性能优化-CPU-物理-初识PhysicsDebugger窗口
52.1 知识点
Physics Debugger 是什么
Physics Debugger 是 Unity 提供的物理系统可视化调试工具。它不会改变场景中的物理行为,而是通过图形化方式把以下信息直观显示在 Scene 视图里,帮助定位物理相关问题:
- 碰撞体(Collider)
- 刚体(Rigidbody)
- 触发器(Trigger)
- 关节(Joint)
- 接触点(Contact)
- 射线检测(Raycast)
- 范围检测(Overlap)
它严格来说不是性能检测工具,更偏向定位物理碰撞表现问题,例如:
- 为什么碰撞没有触发
- 为什么子弹打不中敌人
- 关节为什么拉扯异常
初识 Physics Debug 窗口
打开 Analysis -> Physics Debug,打开窗口后 Scene 窗口也会出现 Physics Debug 的小窗口。

物理调试窗口的 5 个区域
- Info(信息)
显示被选中物理对象(通常是 Rigidbody)的运行时物理属性。
用途:检查某个物体在运行时的物理状态是否正常,例如刚体不动、抖动等问题。 - Filtering(过滤)
控制哪些物理对象会在 Scene 视图中显示。
用途:当场景物体过多时,只显示与调试相关的碰撞体/刚体,避免视图杂乱。 - Rendering(渲染)
调整物理调试可视化的显示方式。
用途:让调试显示更清晰,例如为不同对象分配不同颜色。 - Contacts(接触)
显示物体之间的物理接触信息。
用途:调试碰撞不触发、穿模、弹力异常等问题,查看碰撞点与法线方向。 - Queries(查询)
可视化物理查询操作。
用途:调试射线、范围检测逻辑是否正常,例如 Raycast 未命中或方向错误。
Scene 中的 Physics Debug 小窗口
Scene 窗口里 Physics Debugger 的浮动工具栏提供了快捷开关,用于控制物理调试可视化的显示内容:
- Collision Geometry(碰撞几何体)
作用:是否在 Scene 视图中绘制 Collider 的可视化。
勾选后会显示各种碰撞器的线框与轮廓,用于检查物理碰撞体与视觉模型是否对齐,排查“看起来碰到了但物理没碰到”的问题。 - Mouse Select(鼠标选择)
作用:鼠标点击物体时在 Scene 视图中高亮显示。
便于通过鼠标选择更直观地观察对象。
场景准备
搭建一个新场景,其中放置一些物理对象,便于在 Physics Debugger 中观察与调试。

52.2 知识点代码
Lesson52_性能优化_CPU_物理_初识PhysicsDebugger窗口.cs
public class Lesson52_性能优化_CPU_物理_初识PhysicsDebugger窗口
{
#region 知识点一 Physics Debugger是什么
//Physics Debugger 是 Unity 提供的一个 物理系统可视化调试工具
//它不会改变场景中的物理行为
//而是通过图形化的方式把
//碰撞体(Collider)
//刚体(Rigidbody)
//触发器(Trigger)
//关节(Joint)
//接触点(Contact)
//射线检测(Raycast)
//范围检测(Overlap)
//等信息直观显示在 Scene 视图里
//帮助开发者快速定位物理相关的问题
//它严格来说并不是性能检测工具
//而是用于定位物理碰撞表现问题的
//比如:
//定位为什么碰撞没有触发
//为什么子弹打不中敌人
//关节为什么拉扯异常
//等等 问题的
#endregion
#region 知识点二 初识Physics Debug窗口
//打开 Analysis->Physics Debug
//物理调试窗口中
//主要由五部分组成
//1.Info(信息)
// 显示被选中物理对象(通常是 Rigidbody)的运行时物理属性
// 用途:
// 检查某个物体在运行时的物理状态是否正常,比如为什么这个刚体不动、为什么它抖动等等
//2.Filtering(过滤)
// 控制哪些物理对象会在 Scene 视图中显示
// 用途:
// 当场景里物体太多时,只显示与调试相关的碰撞体/刚体,避免视图杂乱
//3.Rendering(渲染)
// 调整物理调试可视化的显示方式
// 用途:
// 让调试显示更清晰。例如在复杂场景中,给不同对象分配不同颜色
//4.Contacts(联系方式)
// 显示物体之间的物理接触信息
// 用途:
// 调试 碰撞为什么没有触发、为什么会穿模、为什么弹力怪异
// 能看到碰撞点在哪里、法线指向哪里
//5.Queries(查询)
// 可视化物理查询操作
// 用途:
// 调试射线、范围检测逻辑是否正常
// 比如子弹打不中敌人,是因为 Raycast 没命中还是方向错了的问题
//Scene中的Physics Debug小窗口
//Scene 窗口里 Physics Debugger 的浮动工具栏
//它提供了几个快速开关,主要用于控制物理调试可视化的显示内容
//1.Collision Geometry(碰撞几何体)
// 作用:
// 是否在 Scene 视图中绘制 碰撞几何体(Collider) 的可视化
// 勾选时会显示 各种碰撞器 的线框和形状轮廓
// 主要用于检查物体的 物理碰撞体和视觉模型是否对齐,排查看起来模型碰到了,但物理没碰到的问题
//2.Mouse Select(鼠标选择)
// 作用:
// 勾选后,你用鼠标点击某个物体时,会在 Scene 视图里给出 颜色高亮
// 方便我们通过鼠标选择更直观的观察对象
#endregion
#region 知识点三 场景准备
//搭建一个新场景
//其中放置一些物理对象
#endregion
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com