Skip to content

haktan313/HRealEngine

Repository files navigation

HRealEngine

HRealEngine is a custom 2D Game Engine built with C++ and OpenGL.

  • Start with cloning the repo with git clone --recursive https://github.com/haktan313/HRealEngine

  • If you cloned it without the --recursive flag, initialize submodules manually git submodule update --init

  • If you make changes to the build files or need to regenerate Visual Studio project files, run scripts/Win-GenProjects.bat this will call premake5 and create the required .sln files.

📸 Screenshots

Editor Sample Scene
image Scene Screenshot

🧩 Some Features

  • ImGui scene editor with viewport and gizmos
  • Entity Component System by entt
  • C# scripting support with Mono
  • Dual scripting support — C++ (Native) and C# (Mono)
  • Some events like: OnCreate, OnUpdate, OnDestroy, OnOverlapBegin, OnOverlapEnd, Destroy, etc.
  • 2D batch renderer with textures and shaders
  • Scene serialization using YAML
  • Input handling and event system
  • Layer and application framework
  • Logging with spdlog
  • OpenGL rendering backend
  • Hot reloadable C# assemblies
  • Framebuffer and render command abstraction
  • Orthographic camera and controller
  • File dialogs and content browser panel

I used a few submodules there is:

📦 Third-Party Submodules

HRealEngine uses the following libraries (all included as Git submodules):

  • Box2D – 2D physics engine
  • mono - C# scripting
  • entt – Entity Component System
  • GLFW – Window and input handling
  • Glad – OpenGL function loader
  • ImGui – Immediate mode GUI
  • ImGuizmo – Gizmo manipulation for ImGui
  • spdlog – Fast logging library
  • stb_image – Image loading
  • yaml-cpp – Serialization
  • glm – Math library for graphics
  • filewatch

About

HRealEngine is a custom 2D Game Engine which using OpenGL

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published