SuperAPI AI 工具集

webphysics-avbd-engine

通用与其它

查看项目

更新于 10-15 19:48

技能介绍

用途:webphysics-avbd-engine 是一个实验性 WebGPU 加速的刚体与软体物理引擎,实现 Giles 等人(2025)提出的 AVBD(Augmented Vertex Block Descent)求解器,全部计算在 GPU 上通过 WebGPU 计算着色器完成,适合研究 AVBD 算法、GPU 物理仿真与浏览器端 WebGPU 实验。

主要能力:刚体仿真(接触、摩擦、关节);基于 LBVH(Linear BVH)的 GPU 宽相碰撞检测;带热启动持久化的窄相流形生成;基于图着色的并行刚体求解;弹簧与软体约束;刚体休眠与诊断。

使用方式:需克隆仓库并手动集成,非可直接安装的 npm 包。命令:git clone https://github.com/jure/webphysics.git;cd webphysics;npm install;npm run dev(开发服务器,通常为 http://localhost:5173);npm run build(生产构建)。核心 API 包括 new PhysicsEngine(device) 与 await engine.init()、engine.addBody({...})、engine.addJoint({...})、engine.addSpring({...})、engine.step(dt, substeps)、engine.getBodyStates()。静态刚体设 mass: 0。

适用场景:浏览器内 GPU 物理仿真实验、AVBD 算法验证、与 Three.js 等渲染器同步刚体变换。

限制:仅支持 Chrome(需 WebGPU,Chrome 113+ 默认支持,旧版需开启 chrome://flags/#enable-unsafe-webgpu),Firefox/Safari 暂不支持;实验性概念验证,非生产库;API 可能发生破坏性变更;尚未导出供外部使用的 TypeScript 类型声明;同色冲突安全的双缓冲位置更新尚未实现,当前在 avbdState.ts 中使用原地着色刚体求解。构建需 Node.js >= 18。其他收费、价格、平台与效果信息暂未提供。