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.