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
andnpm 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