Unity Physics Package Notebook

unity official document: (Physics package concepts | Unity Physics | 1.0.0-pre.65 (unity3d.com))

Order of Simulation[1]

1. 从组件中获取数据(状态)

Unity Physics是无状态的,因此不保留当前帧以前的计算结果。每帧都重新从组件中获取数据进行计算。

2. BroadPhase

这个阶段通过物体是否激活等信息以及物体的包围盒BoundingBox是否重叠,来快速筛选出可能的碰撞并剔除无用的物体。

3. NarrowPhase

这个阶段使用物体的碰撞体精确地计算碰撞点。

4. 计算碰撞反馈

结合质量、惯性、摩擦、弹性、碰撞点计算碰撞反馈

5. 解析碰撞和结点限制关系

已知碰撞反馈,物体之间的限制,分析受力,给物体赋予速度、角速度、加速度等等

6. 推进模拟

根据时间间隔,各个物体以各自的速度运动

7. 应用Transform

将计算结果写入Transform组件中,从而影响物体的空间状态

Components[2]

Authoring Components:

  • Physics Shape :设置碰撞体形状,Physics Material参数,如摩擦、弹力,其他碰撞参数(替代旧版的Collider)
  • Physics Body:设置质量、惯性等(替代旧版的RigidBody)
  • Physics Step: 一些物理的全局设置
  • Physics Debug Display: Debug用,绘制辅助线条

Data Components:


  1. Order of Simulation

  2. Components

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。