Skip to content

kimljj/ngx-3d-pong

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



ngx-3d-pong

A 3D multiplayer pong game build by Angular 11, Babylon.js 4, Socket.io 4 and Typescript 4

Single player: Sigle player

Multi player: Sigle player


Done and Todo

Done

  • Built a 3d pong game by Angular and Babylon.js.
  • Support max. 4 players at the same time by socket.io.
  • Each one gets one side of the screen where the paddle can move.
  • If there are less than 4 players the unassigned sides should simply reflect the ball.

Todo

  • Game multi-session management (currently support only one game)
  • Game Over and restart
  • Game Configuration (speed, color and paddle length etc.)
  • Better state management
  • Unit tests
  • User authentication/authorization
  • User management (experience, level and vip etc.)
  • Hosting

Install dependencies

client:

cd client
npm install or npm i

server:

cd server
npm install or npm i

Development and local testing

Client: The client server will be hosted on http://localhost:4200/ and opened automatically in browser.

cd client
npm run start
or
ng serve -o

The client will automatically reload if you change any of its source files.

Server: The server will be hosted on http://localhost:3000/.

cd server
npm run start
or
nodemon src/index.ts

The server will be automatically restarted if you change any of the source files.

** To restart a new game please restart the server on http://localhost:3000/


Demo

Currently it's only possiable to play the game on localhost.
The plan for demo is:

  1. Create the build for server
  2. Find a hosting provider and deploy the whole application

Build

client: Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

server: Todo


Unit tests

Todo

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published