Written in TypeScript, uses three.js and ammo.js, brings physics to your three.js project and the third dimension to your Phaser 3 game.
Visit the enable3d website for documentation and examples.
Enable3d now depends on the dependencies below.
{
"@types/matter-js": "0.17.6",
"@types/three": "0.161.2",
"matter-js": "0.17.1",
"phaser": "^3.55.2",
"poly-decomp": "^0.3.0",
"three": "0.161.0",
"three-csg-ts": "^3.1.10"
}
(But it also works on latest Phaser versions like 3.60 & 3.70)
Some useful packages are now available on npm:
Package | Description |
---|---|
audio |
🎵 Audio library for the Web Audio API. |
keyboard |
⌨️ Handling of keyboard events. |
tap |
🖱️ Handling of user interactions such as mouse, touch and pointer events. |
This project is split into many separate npm packages. To better understand the structure and relationships between the packages, see the diagram.
- enable3d A standalone 3D Framework on top of three-graphics.
- @enable3d/phaser-extension Allows to integrate the three-graphics package into your Phaser 3 Games.
- @enable3d/ammo-physics The core Physics package. Wraps ammo.js physics.
- @enable3d/ammo-on-nodejs Enables you to run ammo.js on your node.js server.
- @enable3d/three-graphics The core 3D Objects package. A beautiful API for many three.js elements.
- @enable3d/three-wrapper Wraps the three.js library and some of its examples in one package.
- @enable3d/common Some common code used by almost every package.
Are you used to use Live Server
? Check out Five Server
instead!
Want to make a Real-Time Multiplayer Game? Check out geckos.io.
Licensed under LGPL-3.0
Copyright (c) 2022, Yannick Deubel
Please have a look at the LICENSE for more details.