53.PhysicsDebug窗口Info

53.性能优化-CPU-物理-PhysicsDebugger窗口Info


53.1 知识点

Info 页签的主要作用

Info 页签用于显示被选中物理对象(通常是 Rigidbody)的运行时物理属性。
常见用途是检查物体在运行时的物理状态是否正常,例如刚体不动、抖动等问题。

Info 页签的参数含义

当没有选择任何对象时,会提示:
选择一个带有 Rigidbody(刚体)或 Articulation Body(关节体)组件的 GameObject,以显示它的相关信息。

选择一个或多个带有 Rigidbody(刚体)或 Articulation Body(关节体)组件的 GameObject会显示他们的相关信息。

基础显示与追踪

  1. Number of items per row(每行项目数)
    设置调试信息在窗口中每行显示几个对象。
  2. Tracked objects(追踪对象)
    当前正在跟踪的物体数量。
  3. Lock 与 Clear locked objects(锁定与清空锁定)
    锁定跟踪对象,就算不选中也会显示信息;解除锁定可点击清空。
  4. GameObject(游戏对象)
    被跟踪的具体对象,会显示对象名。

Draw Gizmos for(绘制工具)

决定在 Scene 中为该对象绘制哪类辅助图形:

  1. None
    不绘制额外辅助图形,只显示普通的物理可视化。
  2. Center Of Mass(质心)
    在 Scene 视图中绘制一个小标记(球或十字),表示刚体的质心位置。
    质心不一定在几何中心,带有偏移 Collider 的物体质心可能偏移。
    用于调试物体旋转行为,质心偏移不对可能导致旋转怪异。
  3. Inertia Tensor(惯性张量)
    绘制类似椭球或三轴线的图形,表示刚体的惯性张量方向和大小。
    惯性张量描述物体对不同方向旋转的抗拒程度。
    如果发现某个方向特别难旋转,可检查惯性张量是否与物体几何不匹配。
    长轴易转,短轴难转。

速度相关

  1. Speed(速度)
    物体的瞬时速度大小,单位为 m/s。
  2. Velocity (X/Y/Z)(速度向量)
    物体在世界坐标下的方向速度向量。
  3. Angular Velocity (X/Y/Z)(角速度)
    物体绕各轴的角速度向量,单位为 rad/s。

惯性张量相关

  1. Inertia Tensor (X/Y/Z)(惯性张量)
    刚体在本地坐标系下的惯性张量分量,用来描述物体对旋转加速度的阻抗。
  2. Inertia Tensor Rotation (X/Y/Z)(惯性张量旋转)
    惯性张量的旋转方向,用四元数或欧拉角表示,定义其相对刚体本地坐标的旋转。

质心相关

  1. Local Center of Mass (X/Y/Z)(局部质心)
    刚体在自身局部坐标系下的质心位置。
  2. World Center of Mass (X/Y/Z)(世界质心)
    刚体在世界坐标系下的质心位置。

休眠状态与阈值

  1. Sleep State(休眠状态)
    刚体当前是否处于睡眠状态(Asleep = 静止且不参与物理模拟,Awake = 活跃)。
  2. Sleep Threshold(休眠阈值)
    当物体速度低于该阈值时,会进入睡眠状态。

限制参数

  1. Max Linear Velocity(最大线性速度上限)
    超过会被截断,防止数值过大导致模拟不稳定。
  2. Max Angular Velocity(最大角速度上限)
    角速度上限控制。

求解器参数

  1. Solver Iterations(求解器迭代)
    物理解算迭代次数,用于处理碰撞和约束。数值越大精度越高,但性能开销更大。
  2. Solver Velocity Iteration(求解器速度迭代)
    速度相关的迭代次数,影响摩擦与反弹等效果精度。

调试建议

  1. 确定物体为什么不动:重点看 VelocitySleep State
  2. 排查旋转异常:重点看 Angular VelocityInertia Tensor
  3. 排查穿透或弹力怪异:重点看 Solver Iterations,再结合 Contacts 页签。

53.2 知识点代码

Lesson53_性能优化_CPU_物理_PhysicsDebugger窗口Info.cs

public class Lesson53_性能优化_CPU_物理_PhysicsDebugger窗口Info
{
    #region 知识点一 Info页签的主要作用

    //显示被选中物理对象(通常是 Rigidbody)的运行时物理属性
    //用途:
    //检查某个物体在运行时的物理状态是否正常
    //比如为什么这个刚体不动、为什么抖动等等

    #endregion

    #region 知识点二 Info页签的参数含义

    //思维导图中讲解

    #endregion
}

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏