Skip to content

dimforge/rapier.js

Repository files navigation

crates.io

Build status

Website | Documentation | 2D examples (sources) | 3D examples (sources)


2D and 3D physics engines for the JavaScript programming language (official bindings).


Building packages manually

From the root of the repository, run:

./builds/prepare_builds/prepare_all_projects.sh
./builds/prepare_builds/build_all_projects.sh

Note that prepare_all_projects.sh only needs to be run once. It needs to be re-run if any file from the builds/prepare_builds directory (and subdirectories) are modified.

The built packages will be in builds/rapier2d/pkg, builds/rapier3d/pkg, etc. To build the -compat variant of the packages, run npm run build in the rapier-compat directory. Note that this will only work if you already ran prepare_all_projects.sh. The compat packages are then generated in, e.g., rapier-compat/builds/3d/pkg.

Feature selection

Multiple NPM packages exist for Rapier, depending on your needs:

Bundler support

Some bundlers will struggle with the .wasm file package into the builds above. Alternative -compat versions exist which embed the .wasm file into the .js sources encoded with base64. This results in a bigger package size, but much wider bundler support.

Just append -compat to the build you are interested in: rapier2d-compat, rapier2d-simd-compat, rapier2d-deterministic-compat, rapier3d-compat, rapier3d-simd-compat, rapier3d-deterministic-compat.

Nightly builds

Each time a new Pull Request is merged to the main branch of the rapier.js repository, an automatic canary build is triggered. Builds published to npmjs under the canary tag does not come with any stability guarantee and does not follow semver versioning. But it can be a useful solution to try out the latest features until a proper release is cut.

About

Official JavaScript bindings for the Rapier physics engine.

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages