FPS Multiplayer active - desktop/mobile basic template (three.js, ammo.js , kurento/OpenVidu )

Source code:
Github repo
Demo link:
GAME PLAY

emplate/Demo FPS SHOOTER HANG3d reborn

Using power of Three.js, ammo.js. MagicThree is nice class sorted top level of threejs and ammo.js. Magic-three use the new version threejs 149. [JS type of script module variant with last version of three.module.js]

Extreme interest facts:

  • No spending times on build, magic-three use type module in browser.
  • Using themes without scss - also no build.
  • Combination Three.js vs ammo.js is last physics solution from three.js project.
  • Using webRTC for networking/multiplayer brings video chat/stream in same time.

Description

Magic-Three is First Person Oriented but can be used for any other case of app flow.

  • No build needed, just copy/paste for both dev and prod mode.It is the module type of script. Nice fit with npm modules also works direct in browser.
  • Custom magic Map loader. All 3d objects comes from map.
  • No package.json [if this repo become npm package then will be back] In folder ./backend we have package.json to import deps (npm i) for server part. Run in folder ./backend cmd: npm i and npm run magic for host and broadcaster.
  • Must be fully PWA [cache, server compression, image format webp etc…]
  • MultiLang support [async load JSON MultiLang file avoid loading all multiLangs]
  • Networking based on webRtc multiRTC3 library. Signaling server, video chat or stream to texture.
  • Basic example: FPS Player controller [bullet , collision]
  • recommended*** → New networking driver based on OV/Kurento. OpenVidu Docs
1 Like

Player collider is cube instead capsule?

1 Like

I will try with capsule. I already try with sphere but not stable when my player is not landed on floor. If i jump on cube there is inert moving… Any suggestion ?

When i go is like i am on box which is rotating under me. For stable sphere maybe need beig friction.