Giter VIP home page Giter VIP logo

enable3d-website's Introduction

enable3d logo
3D for Web, Mobile and PC

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.

NPM version GitHub Workflow Status Three GitHub last commit

WebsitePackagesLicense

Website

Visit the enable3d website for documentation and examples.

Dependencies

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)

Useful Packages

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.

Packages

This project is split into many separate npm packages. To better understand the structure and relationships between the packages, see the diagram.

creately-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.

Development Server

Are you used to use Live Server? Check out Five Server instead!

Multiplayer Game

geckos.io logo

Want to make a Real-Time Multiplayer Game? Check out geckos.io.

License

Licensed under LGPL-3.0
Copyright (c) 2022, Yannick Deubel
Please have a look at the LICENSE for more details.

enable3d-website's People

Contributors

bleuscyther avatar gabriserra avatar jwr1 avatar krutoo avatar maryasych avatar maxscharwath avatar vitalspace avatar yandeu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

enable3d-website's Issues

The TS project fails to reference enable3d

Describe the bug
When I installed [email protected] in NPM, I just used A simple line of code to determine if the code would work.
But it went horribly wrong with the warning
image

In this file path:'./src/demo.ts'

import { Project } from 'enable3d'; console.log(Project)

image

package.json like this: `"scripts": { "build": "webpack", "serve": "webpack-dev-server --config webpack.config.js" }, "dependencies": { "enable3d": "^0.25.2", "typescript": "^3.9.7" }, "devDependencies": { "ts-loader": "^6.2.1", "webpack": "^4.41.5", "webpack-cli": "^3.3.10", "webpack-dev-server": "^3.10.1" },`

and webpack.config.js like this:

const path = require('path'); module.exports = { entry: { demo: './src/demo.ts' }, mode: 'production', module: { rules: [ { test: /\.tsx?$/, use: 'ts-loader', exclude: /node_modules/ } ] }, resolve: { extensions: ['.tsx', '.ts', '.js'] }, output: { filename: "[name].js", path: path.resolve(__dirname, 'dcp-lib'), library: 'x-x', [git-bug-project.zip](https://github.com/enable3d/enable3d-website/files/9280748/git-bug-project.zip) libraryTarget: 'umd', }, devServer: { contentBase: path.join(__dirname, ''), compress: true, port: 8899 } }

Have a question?
The whole project is very simple, you can download the attachments and run the project with npm run serve after installing with npm i.

image

https://github.com/enable3d/enable3d-website/files/9280773/git-bug-project.zip

git-bug-project.zip

TODOs

TODOs

  • Skeleton based example.
  • Transform Controls example.

unexpected resizing and changing possition of fbx object

Hello,

I have made simple demo scene of my project, using enable3d as extension for Phaser.
The problem is the fbx object 'ignore' a real canvas size.

When it tries to change the distance between chrome dev tools and canvas - the fbx object, after refreshing the page, changes its position as well as its scale (although the canvas has rigidly declared dimensions).

Screenshots:

https://imgur.com/a/NjhcQDV

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.