Back to Top

通过`PhysX API`理解`Chaos API`

PhysXNVIDIA开源的物理引擎, 一直被各个游戏引擎使用. ChaosUnrealEngine在4.26版本起公开的物理引擎, 在UE5中已经成了默认物理引擎.

PhysX提供完整的开发文档, Chaos开发文档缺乏, 通过看UnrealEngine的代码, 对标以前对PhysX的理解, 来学习Chaos API的使用.

基础概念对照

** Physx Chaos 备注
可视化调试器 PVD CVD CVD(ChaosVisualDebugger)不知如何用
物理场景 PxScene FPhysicsSolver  
刚体对象 PxRigidActor FSingleParticlePhysicsProxy  
刚体形状 PxShape Chaos::FPerShapeData  
物理模拟函数 PxScene::simulate FPhysicsSolverBase::AdvanceAndDispatch_External  
物理结果函数 PxScene::fetchResults FPhysicsSolverBase::PullPhysicsStateForEachDirtyProxy_External  

最小流程

  1. 新建物理场景
  2. 创建刚体对象
  3. 创建刚体形状到刚体对象
  4. 将刚体对象添加到物理场景
  5. 循环(物理模拟/物理结果)