Teljesen típusozott 2D fizikai motor TypeScripthez és JavaScripthez — a Nape modern újraírása
Merev testek • Körök, sokszögek és kapszulák • Kényszerek • Folyadékszimuláció • Ütközési visszahívások • Sugárkövetés és térbeli lekérdezések • Törés • Lágy test • Determinisztikus többjátékos mód • Szerializálás • Web Worker támogatás — tree-shakeable, függőségmentes, ~27 KB gzip.
npm install @newkrok/nape-js
Kattints vagy húzz a vásznon a kölcsönhatáshoz. Válassz egy demót alább. Fizika Játék
Épp most, a te böngésződben mérve. Minden teszt egy szoros ciklusban futtatja a fizikai step() hívást, és a lépésenkénti medián időt jelenti.
Nyomd meg a gombot az indításhoz.
A nape-js egyike azon kevés JavaScript és TypeScript 2D fizikai motoroknak, amely merevtest-dinamikát, ízületeket (PivotJoint, DistanceJoint, WeldJoint, AngleJoint, MotorJoint, LineJoint, PulleyJoint, SpringJoint), folyadék-felhajtóerőt, törést, lágy testet, sugárkövetést és konvex söpréseket, beépített karaktervezérlőt, determinisztikus lépegetést a többjátékos visszagörgetéshez, bináris szerializálást, visszajátszás-rögzítést és egy szálon kívüli Web Worker hidat kínál — mindezt egyetlen tree-shakeable ESM csomagban (~27 KB gzip), teljes TypeScript típusokkal és DOM-függőségek nélkül.
A Box2D, Matter.js, Planck.js vagy Rapier alternatíváját keresed? Futtasd a böngészőbeli teljesítménytesztet, hogy közvetlenül összehasonlítsd őket, vagy merülj el az interaktív példákban — fizikai demók és játszható minijátékok (platformer, MOBA, tornyos védekezés, csúzli, flipper, felülnézetes lövölde).