Skip to content

michael-silva/webgl-game-engine-ecs

Repository files navigation

WebGL Game Engine

A study of creating a javascript 2D game engine based on canvas WebGL

Reference examples here https://gamethemedgroup.github.io/GTCS-GameEngine/index.html

ECS References

Features

  • Audio Engine
  • Input Engine
  • Render Engine / Cameras support / Text support / Textures support / Illumintation support / Shadders support
  • Particles Engine
  • Resource management
  • Scenes management
  • Physiscs engine
  • Utils

Task to complete version 1

-[x] Create a pong demo -[x] Invert the relation one to many scenes/world -[x] Add capability to turn on and off game cameras -[x] Add capability to turn on and off systems -[x] Add way to extend the existing engines adding new systems -[x] Add way to add new engines -[] Create a system of states as a collection of active scenes and current worlds, and active systems / cameras -[] Refacor and improve the render layer system -[] Add way to reset the scenes and worlds easily -[] Create the final project game -[] Do the samples with advanced particles -[] Do the samples with advanced physics -[] Do the samples with IDE editor -[] Create the angry birds clone demo -[] Create the side scroll runner demo -[] Create the spaceshooter demo -[] Create the 2d platform demo -[] Create the fight demo -[] Create the rpg demo -[] Add lerna to project spliting the source packages and demos -[] Create the unit tests

Futher Improvements

  • Think about use of typescript
  • Library of materials/lights/particles/etc...
  • Write documentation with demos and tutorials
  • Split the proccess in multiple threads using web workers
  • Easy api to do animations and trasitions

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published