A minimal header-only C++ OpenGL 3d game framework
Minimal means minimal! The only thing this framework can do is render things. This means that you need to load models, textures, shaders and other things yourself.
The framework providers a deferred renderer with support for simple directional lighting, textures and shadows.
Note: there is a forward renderer with minimal support for lighting and I don't really plan to support it for now
core.hpp- the actual frameworkmain.cpp- an example/tester that usessrd::core- depends on:
util.hpp- whatmain.cppuses to load models and textures- depends on:
log.hpp- a tiny logging library, only needed formain.cppandlog.hpplog.cpp-log.hppdefault imlementation {take a look}runfile- similar toMakefilefor mymakealternative (just run the console command)
The header file uses the same guard as most of stb's headers do:
// Somewhere in a .cpp file, once
#define SRD_CORE_IMPLEMENTATION
#include <.../.../core.hpp>Important! srd::core::window::show(...) is defined only when SRD_CORE_IMPLEMENTATION is defined! (this is because the function needs to have templates for lambdas! [std::function is slow...])
TODO! See main.cpp!!! (it's small)
Started working on July 20th, 2021.