Skip to content

Latest commit

 

History

History
79 lines (53 loc) · 2.77 KB

README.md

File metadata and controls

79 lines (53 loc) · 2.77 KB

gLib Logo

License Version Made with love

Framework around the SDL library allowing to create small 2D video games quickly.

About

During another project in C with the SDL library, I was getting tired of having to recode the game's graphic management every time. That's why I decided to make my own framework around the SDL allowing to set up as simply as possible small 2D video games.

This framework offers a development architecture more adapted to games and manages the graphic loop as well as the creation and management of many graphic components such as buttons, simple or animated sprites, input fields, sounds or simply text.
gLib is extensible, which means that you can develop your own graphical components and use them with the resource manager.

In addition to providing high-level support to SDL, it also provides support for the creation of a client/server architecture to integrate a network multiplayer concept into your game as well as pathfinding algorithms.

The framework is currently compatible with Linux (tested on Debian 8 & 9), Windows (tested on Windows 10 x86 and x64) and Mac OSX.

How to compile

Prerequisites

Compile [GNU/Linux / OSX]

$> git clone https://github.com/Astropilot/gLib.git
$> cd gLib
gLib$> make

Compile [Windows x86 & x64]

We recommend that you use Visual Studio and import the header and source files.

How to use

First import the includes folder into your project and include the glib.h file. In your compilation tool add a reference to the static library libglib.a previously compiled.

All the documentation of the framework is available in the wiki of the git repository.

Here is a simple example:

├── includes
│   ├── glib.h
│   └── ...
├── libglib.a
└── main.c

main.c:

#include <stdlib.h>

#include "glib.h"

int main(void)
{
    return (EXIT_SUCCESS);
}

Compilation:

$ gcc main.c -o mygame -Iincludes/ -lglib

Credits

Lead developper: @Astropilot

Developpers: @heinsenbergggg @gaudesp and @GhostRolly