Обновлено: 2026-06-10
Rapier — быстрый физический движок на Rust с JavaScript/WASM-биндингами. Поддерживает 2D и 3D симуляции.
Rapier загружается асинхронно:
import RAPIER from "@dimforge/rapier3d";
const physics = await RAPIER.init();
const world = new physics.RapierWorld(
new physics.Vector3(0, -9.81, 0) // гравитация
);
const bodyDesc = physics.RigidBodyDesc.dynamic();
const body = world.createRigidBody(bodyDesc);
const colliderDesc = physics.ColliderDesc.cuboid(1, 1, 1);
world.createCollider(colliderDesc, body);
Используйте useFrame для синхронизации физики и рендера: каждый кадр вызывайте world.step() и обновляйте позиции mesh из body.translation().
npm install @dimforge/rapier3d