- https://itnext.io/entity-component-system-in-action-with-typescript-f498ca82a08e
- https://maxwellforbes.com/posts/typescript-ecs-implementation
- https://github.com/grebaldi/nopun-ecs
- https://ecsy.io/docs/#/
- https://blog.mozvr.com/introducing-ecsy/
- https://medium.com/ingeniouslysimple/entities-components-and-systems-89c31464240d
- Rectangle collision: https://www.youtube.com/watch?v=LYrge3ylccQ&ab_channel=PothOnProgramming
- Collision detection: https://spicyyoghurt.com/tutorials/html5-javascript-game-development/collision-detection-physics
https://www.youtube.com/watch?v=kpiO5-BtX4I&t=2258s&ab_channel=ArmadaJS-JavaScriptconference
How To Make A JavaScript Platformer
- Position [position]
- Velocity [speed, velocity]
- Input [left, right, up, down]
- BoxCollider [size, collision]
- Shape [size, color]
- Player [Position, Shape, Velocity, Input, BoxCollider]
- Tiles [Position, Shape, BoxCollider]
- Decoration [Position, Shape, BoxCollider]
- NPC [Position, Shape, Velocity, BoxCollider]
- Movement []
- ShapeRenderer [BoxShape, Position]
- InputSystem [Input]
- MovementSystem [Position, Velocity]
- CollisionSystem [BoxCollider, Position]
- DebugInfo []
- Fix: velocity, speed, drag, gravity, no-fly, double-jump
- NPC & collision
- Debugsystem
- toggle
- where to put code ? scene ? game ? ...systems ?
- Respawn when falling out of the world
- Coin & collision with different response
- Design a level
- Projectile weapon
- Crouch
- Dash
- Camera
- UI