Gamedev Framework (gf) is a framework to build 2D games in C++17. It is based on SDL and OpenGL ES 2.0, and presents an API that is very similar to the graphics module of SFML with additional features. It is not a game engine, it is more something like a framework, similar to libGDX in the Java world.
Gamedev Framework (gf) is licensed under the terms and conditions of the zlib/libpng license.
#include <gf/Event.h>
#include <gf/Font.h>
#include <gf/RenderWindow.h>
#include <gf/Sprite.h>
#include <gf/Text.h>
#include <gf/Window.h>
int main() {
// Create the main window and the renderer
gf::Window window("Example", { 640, 480 });
gf::RenderWindow renderer(window);
// Load a sprite to display
gf::Texture texture("sprite.png");
gf::Sprite sprite(texture);
sprite.setPosition({ 300, 200 });
// Create a graphical text to display
gf::Font font("DroidSans.ttf");
gf::Text text("Hello gf!", font, 50);
text.setPosition({ 100, 100 });
renderer.clear(gf::Color::White);
// Start the game loop
while (window.isOpen()) {
// Process events
gf::Event event;
while (window.pollEvent(event)) {
switch (event.type) {
case gf::EventType::Closed:
window.close();
break;
default:
break;
}
}
// Draw the entities
renderer.clear();
renderer.draw(sprite);
renderer.draw(text);
renderer.display();
}
return 0;
}
See the online documentation for Gamedev Framework (gf).
If you want to talk directly with the developpers, you can
Gamedev Framework (gf) is very open to contributions. See the contribution guidelines.
You have to install the following dependencies:
See the documentation for more information on how to build and install gf.
These screenshots are from games included in the repository.