Ammo.js 使用Emscripten将 Bullet物理引擎 直接移植到JavaScript。源代码被直接翻译成JavaScript,未进行人工重写,因此功能与原始项目相同。
Bullet Physics是一个开源的物理模拟引擎,世界三大物理引擎之一(另外两种是Havok和PhysX)。支持Bullet Physics物理引擎的设计软件有
- Blender 3D;
- Cienma 4D;
- LightWave 3D Core
- 3Ds Max
- Maya
……
因此,作为其JS版本的Ammo.js,其功能也是不言而喻的。
对于Ammo.js的使用方法,大部分可以参考Bullet Physics 的使用方法。
Ammo.js 支持对 RigidBody 和 SoftBody 的模拟,相关示例如下(Three.js 作图形处理):