Skip to content

Osmanyasal/Recursion-Engine

Repository files navigation

    Recursion Game Engine

ICON
C++    OpenGL    Vulkan    Linux    Mac   
GLFW    pmu_tools    Dear Imgui    GLM    ENTT    Doxygen

About

  • Cross Platform Game Engine mainly developed for Linux and MacOS environments. Windows support will be added
  • Developed with C++ and Make/Bash scripts.
  • You can write your scripts in C++, Python3 and Lua
  • Performance monitoring support !!

To run 🚀

git clone --recurse-submodules https://github.com/Osmanyasal/Recursion-Engine.git
cd ./Recursion-Engine
make run

Makefile by default enables PGO (profiler-guided optimizations) meaning it collects data as you use the engine.
After running the application for a while on a single run, you can re-compile the engine as follows

make -f optimize [run]
[make run]

You can compare before and after performance using defined rules in Makefile.

make tma_analiysis  
make monitor_callstack  
mem_check
...

PERFORMANCE MONITORING 🔎

You can use the following makefile targets to collect meaningful metrics
All targets use perf tool and Valgrind, so make sure they're installed

make tma_analiysis # makes tma analysis unearths how much of your application {front,back}-end bounded or bad-speculated 
make monitor_callstack # hottest ran functions 
make mem_check # runs the Valgrind tool to make a detailed memory analysis.

Currently

  • You can follow the current development status at projects section
  • Main support is on Linux, MacOS and Windows side-supported.
  • Developing fundamentals; OpenGL and glfw3 are preferred, Vulkan and DirectX will be supported later.

About

Recursion Game Engine.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published