ECS Game Engine
A downloadable tool for Windows
https://github.com/omonnin-ynov/MyGameEngine
A Game Engine in C++20 supporting a simplified ECS, written in a few weeks.
To download the engine, clone the github repo. The download on this page contains a sample game that's a vampire survivors clone and pretty stable memory usage.
Features:
- Simplified ECS
- Engine management through Application class
- 2D SFML Integration
- Starting up an SFML Window
- Views with CameraComponent
- Automatic call of drawable components in update loop, scale with parent entity scale
- SpriteRendererComponent with a texture and sprite
- Input checking in Update in PlayerInput
- Box2D integration :
- Instantiate a b2World
- Synchronize physics world and graphical world in the update loop
- RigidBodyComponent, ColliderComponent wrap b2Body and b2Fixture
- Contact wrapper with ICollidable and CollisionListener
- Collision filtering
- YAML integration
- Resource path manager
- Can add player characters, projectiles and enemies purely through config file
- Lua script integration with globally accessible lua_state to save on reloading scripts
Features I'd like to add:
- Components can have children components
- ECS paradigm with memory accesses optimized for locality
- Sprite center matches up with b2Body center
- Better input integration
- GUI Components
- Sound
- Tilemap manager
Download
Download
Vampire-Surviors-x64.zip 19 MB
Leave a comment
Log in with itch.io to leave a comment.