actnwit / RhodoniteTS

Rhodonite Web3D(WebGL2&WebGPU) Library in TypeScript
MIT License
123 stars 5 forks source link

Support physics libraries #788

Open emadurandal opened 3 years ago

emadurandal commented 3 years ago
  1. Evaluate libraries & choose one
  1. Implement

┆Issue is synchronized with this Wrike Item

emadurandal commented 3 years ago

Ammo.js & Three.js Demo by lo-th san. http://lo-th.github.io/Ammo.lab/#car_terrain

cx20 commented 3 years ago

As far as I know, the following physics libraries are currently available in JavaScript.

Library License URL description
ammo.js zlib https://github.com/kripken/ammo.js/ This is a JavaScript port of the Bullet physics engine(C++).
Oimo.js MIT https://github.com/lo-th/Oimo.js/ This is a JavaScript port of a physics library made with ActionScript.
OimoPhysics MIT https://github.com/saharan/OimoPhysics A physics library made in Haxe, exported to JavaScript.
cannon.js MIT https://github.com/schteppe/cannon.js A physics library with a high affinity for Three.js. Unfortunately, it is no longer maintained.
cannon-es MIT https://github.com/pmndrs/cannon-es This is a forked version of cannon.js. It includes bug fixes and new features.
Energy.js CC BY-NC 4.0 https://github.com/samuelgirardin/Energy.js A JavaScript port for the C++ physics library Open Dynamic Engine.
cx20 commented 3 years ago

It seems that lo-th has started testing the next version of ammo.js and OimoPhysics, the successor to Oimo.js. http://lo-th.github.io/root/ammo_next/ http://lo-th.github.io/root/oimo_next/

emadurandal commented 3 years ago

@cx20 Thank you. We'll make a plan.

emadurandal commented 1 month ago

@cx20 Currently, Rhodonite uses Oimo.js (https://github.com/lo-th/Oimo.js/). But Oimo.js has not been updated for a long time recently. It may switch to OimoPhysics in the future.

cx20 commented 1 month ago

When updating to the latest version of Rhdonite, the physics calculation sample stopped working, so I fixed it so that it works now. Below is a sample using oimo.js with Rhdonite.

https://cx20.github.io/webgl-physics-examples/examples/rhodonite/oimo/minimum/ https://cx20.github.io/webgl-physics-examples/examples/rhodonite/oimo/domino/