Motor de física 2D totalmente tipado para TypeScript y JavaScript — reescritura moderna de Nape
Cuerpos rígidos • Círculos, polígonos y cápsulas • Restricciones • Simulación de fluidos • Callbacks de colisión • Raycasting y consultas espaciales • Fractura • Cuerpo blando • Multijugador determinista • Serialización • Compatible con Web Worker — apto para tree-shaking, cero dependencias, ~27 KB gzip.
npm install @newkrok/nape-js
Haz clic o arrastra sobre el lienzo para interactuar. Elige una demo abajo. Física Juego
Medido en tu navegador ahora mismo. Cada prueba ejecuta el step() de física en un bucle cerrado e informa la mediana del tiempo por paso.
Presiona el botón para comenzar.
nape-js es uno de los pocos motores de física 2D para JavaScript y TypeScript que incluye dinámica de cuerpos rígidos, juntas (PivotJoint, DistanceJoint, WeldJoint, AngleJoint, MotorJoint, LineJoint, PulleyJoint, SpringJoint), flotabilidad de fluidos, fractura, cuerpo blando, raycasting y barridos convexos, un controlador de personaje integrado, avance determinista para rollback multijugador, serialización binaria, grabación de repeticiones y un puente Web Worker fuera del hilo principal — todo en un único paquete ESM apto para tree-shaking (~27 KB gzip), con tipos TypeScript completos y cero dependencias del DOM.
¿Buscas una alternativa a Box2D, Matter.js, Planck.js o Rapier? Ejecuta el benchmark en el navegador para compararlos cara a cara, o entra directo a los ejemplos interactivos — demos de física y mini-juegos jugables (plataformas, MOBA, tower defense, resortera, pinball, shooter cenital).