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.cpp
uses to load models and textures- depends on:
log.hpp
- a tiny logging library, only needed formain.cpp
andlog.hpp
log.cpp
-log.hpp
default imlementation {take a look}runfile
- similar toMakefile
for mymake
alternative (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
.