awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
kripken avatar

kripken/ammo.js

0
View on GitHub↗
4,514 stars·579 forks·C++·20 views

Ammo.js

ammo.js is a JavaScript port of the Bullet physics engine, compiled via Emscripten to provide a high-performance physics library for the browser. It functions as a 3D rigid body engine and an Emscripten compiled library that enables complex physical computations using WebAssembly and JavaScript.

The project provides specialized simulation capabilities for soft body physics, modeling the deformation of flexible materials like cloth and rubber, and a vehicle dynamics engine for calculating the mechanics of wheeled vehicles.

The simulation surface also covers rigid body dynamics for non-deformable solid objects and heightmap terrain generation for creating 3D landscapes that drive physical interactions.

Features

  • 3D Physics Engines - Provides a high-performance 3D physics engine for calculating real-time rigid body collisions and movement in the browser.
  • Rigid Body Physics Engines - Provides a dedicated engine for calculating the motion and collision of non-deformable solid objects.
  • Rigid Body Dynamics - Simulates the motion and collision of non-deformable solid objects using rigid body dynamics.
  • C/C++ to WebAssembly Compilers - Employs a toolchain to compile C++ source code into WebAssembly bytecode for high-performance browser execution.
  • Native C-JavaScript Bridges - Provides the glue layer for data exchange and function calls between native C++ physics code and JavaScript.
  • Manual Memory Management - Requires explicit allocation and deallocation of physics objects to prevent memory leaks within the compiled WebAssembly environment.
  • WebAssembly Runtimes - Executes pre-compiled binary modules in low-level bytecode format to achieve near-native performance for physics calculations.
  • Linear Memory Sharing - Implements a contiguous WebAssembly memory buffer to store physics state and object data for efficient, zero-copy access.
  • JavaScript Ports - Provides a JavaScript implementation of the Bullet physics engine compiled via Emscripten for web-based 3D simulations.
  • Soft Body Physics - Calculates the deformation and movement of flexible materials to model realistic cloth and rubber behaviors.
  • Soft Body Simulations - Models the deformation and movement of flexible materials like cloth and rubber using soft body simulations.
  • Vehicle Physics Engines - Implements a specialized physics framework for calculating the mechanics and movement of wheeled vehicles in 3D.
  • Wheeled Vehicle Simulations - Provides a specialized engine for simulating the movement and mechanics of wheeled vehicles, including suspension and steering.
  • Web-Based - Enables the development of interactive 3D browser games that require complex physical interactions and dynamics.
  • Physics Engines - JavaScript port of the Bullet physics engine.
  • Game Engines and Frameworks - JavaScript port of a physics engine.
  • Graphic Libraries - Port of the Bullet physics engine to JavaScript.
  • Physics Engines - Bullet 3D physics engine ported to WebAssembly.
  • Web Graphics Libraries - Port of the Bullet physics engine for JavaScript.
  • Playgrounds and Examples - Physics engine ported to WebAssembly.

Star history

Star history chart for kripken/ammo.jsStar history chart for kripken/ammo.js

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Ammo.js

Similar open-source projects, ranked by how many features they share with Ammo.js.
  • schteppe/cannon.jsschteppe avatar

    schteppe/cannon.js

    4,979View on GitHub↗

    cannon.js is a JavaScript 3D physics engine designed for calculating rigid body dynamics and collisions in three-dimensional space. It functions as a rigid body dynamics engine that models mass, friction, and velocity to determine object movement, while providing a mathematical framework for applying physical constraints and joints. The engine supports a variety of collision volumes, including spheres, boxes, convex polyhedrons, heightfields for terrain simulation, and complex triangle meshes. It provides tools for identifying intersections between these shapes and calculating the exact areas

    JavaScript
    View on GitHub↗4,979
  • jrouwe/joltphysicsjrouwe avatar

    jrouwe/JoltPhysics

    9,685View on GitHub↗

    JoltPhysics is a high-performance C++ physics engine designed for multi-threaded simulation of 3D rigid bodies and soft bodies. It serves as a deterministic simulation framework, ensuring identical results across different platforms and architectures to support networked synchronization. The engine distinguishes itself through a focus on concurrent execution across multiple CPU cores to handle large numbers of active bodies. It provides specialized systems for vehicle physics, including wheeled and tracked models, as well as soft body physics for deformable objects and cloth. The simulation

    C++c-plus-pluscppgame-development
    View on GitHub↗9,685
  • dimforge/rapierdimforge avatar

    dimforge/rapier

    5,471View on GitHub↗

    Rapier is a cross-platform physics engine and rigid body dynamics solver designed for 2D and 3D simulations. It functions as a collision detection system and a robotics simulation framework, providing a consistent API for calculating physical interactions across different environments. The engine distinguishes itself with specialized robotics capabilities, including a toolkit for importing URDF and STL models to control multibody chains. It supports precise mechanical movement through inverse kinematics calculations and the application of PID controllers for dynamic body control. The simulat

    Rust
    View on GitHub↗5,471
  • google/liquidfungoogle avatar

    google/liquidfun

    4,894View on GitHub↗

    LiquidFun is a 2D physics engine and game physics framework designed to calculate movement and collisions for rigid bodies and particle systems. It functions as a simulation tool for integrating real-time physical interactions and dynamics into interactive applications. The framework specifically provides a particle-based fluid simulator to model liquid dynamics, including splashing, displacement, and surface tension. It also includes a soft body physics simulator for creating deformable and elastic objects that react to physical forces. The engine covers a broad range of physical interactio

    C++
    View on GitHub↗4,894
See all 30 alternatives to Ammo.js→

Frequently asked questions

What does kripken/ammo.js do?

ammo.js is a JavaScript port of the Bullet physics engine, compiled via Emscripten to provide a high-performance physics library for the browser. It functions as a 3D rigid body engine and an Emscripten compiled library that enables complex physical computations using WebAssembly and JavaScript.

What are the main features of kripken/ammo.js?

The main features of kripken/ammo.js are: 3D Physics Engines, Rigid Body Physics Engines, Rigid Body Dynamics, C/C++ to WebAssembly Compilers, Native C-JavaScript Bridges, Manual Memory Management, WebAssembly Runtimes, Linear Memory Sharing.

What are some open-source alternatives to kripken/ammo.js?

Open-source alternatives to kripken/ammo.js include: schteppe/cannon.js — cannon.js is a JavaScript 3D physics engine designed for calculating rigid body dynamics and collisions in… jrouwe/joltphysics — JoltPhysics is a high-performance C++ physics engine designed for multi-threaded simulation of 3D rigid bodies and… dimforge/rapier — Rapier is a cross-platform physics engine and rigid body dynamics solver designed for 2D and 3D simulations. It… google/liquidfun — LiquidFun is a 2D physics engine and game physics framework designed to calculate movement and collisions for rigid… lo-th/oimo.js — Lightweight 3d physics engine for javascript. idmillington/cyclone-physics — Cyclone Physics is a three-dimensional rigid body physics engine designed for game development. It provides a…