gKit2 light
Installation

gKit2 utilise 3 librairies : sdl2 et sdl2_image, et glew, il faut les installer avant de pouvoir compiler les exemples.

les étapes sont légèrement différentes d'un système à l'autre. une fois les librairies installées, il faut générer les projets pour votre environnement de développement :

c'est l'outil premake qui permet de créer les projets, et les makefiles, cf section premake.

linux

installez les paquets, si nécessaire (pas la peine au nautibus) : libsdl2-dev, libsdl2-image-dev, libglew-dev et premake4

par exemple, pour ubuntu et ses variantes :

sudo apt-get install libsdl2-dev libsdl2-image-dev libglew-dev premake4

windows

les librairies sont disponibles :

plusieurs versions de premake pour visual studio sont disponibles :

installation rapide

les librairies et premake4/5 sont regroupées dans une archive disponible ici.

il suffit de dezipper l'archive dans le répertoire de gKit, et ensuite de copier les dll et la version de premake que vous allez utiliser dans le répertoire de gKit :

installation manuelle

le plus simple est de créer un sous répertoire, extern par exemple, et d'y copier les fichiers .h, .dll et .lib. vous devez obtenir une structure :

gKit2light/
premake4/5
premake4.lua
data/
shaders/
...
...
tutos/
...
src/
gKit/
...
extern/
mingw/ ou visual2013/ ou visual2015/
bin/
include/
SDL2/
SDL.h
SDL_image.h
...
GL/
glew.h
...
lib/
glew32.dll et lib
SDL2.dll et lib
SDL2_image.dll et lib
SDL2_main.lib
...

il faudra modifier le fichier premake4.lua avec le chemin d'accès à ce répertoire, si vous n'utilisez pas cette solution. cf section premake.

mac os

les librairies sont disponibles :

copier le contenu des fichiers .dmg dans /Library/Frameworks

premake4 est disponible :

copiez le dans le répertoire des sources de gKit

premake :

ouvrez un terminal, et naviguez jusqu'au répertoire contenant gKit :

rappel : commandes ls et cd pour naviguer.

éxecuter premake4 –help, la suite devrait être assez évidente.

vous pouvez maintenant ouvrir la solution visual studio, le projet xcode, code blocks et compiler shader_kit ou un des tutos.

utilisation des makefiles

les makefile peuvent générer les versions debug (cf utiliser gdb ou lldb) ou les versions release, plus rapide (2 ou 3 fois, interressant pour les projets avec beaucoup de calculs) :

premake et les projets :

pour ajouter un nouveau projet, le plus simple est de modifier premake4.lua et de regénérer le projet complet.

il y a 2 solutions :

projet en 1 fichier .cpp

le plus simple est l'ajouter à la liste des projets, modifiez :

-- description des projets      
local projects = {
    "shader_kit"
}

et ajoutez le votre, sans l'extension .cpp, par exemple tp1 :

local projects = {
    "shader_kit",
    "tp1"
}

et regénérez le projet, cf premake4 gmake / vs2013 / xcode ...

projet avec plusieurs fichiers .cpp

ajoutez la description de votre projet :

project("tp1")
    language "C++"
    kind "ConsoleApp"
    targetdir "bin"
    files ( gkit_files )
    files { "tp1_main.cpp", "tp1_scene.cpp", "tp1_render.cpp" }

regénérez le projet,

cf premake4 gmake / vs2013 / xcode ...

FAQ :

erreur horrible dans src/gKit/window.cpp :

selon la version glew, le type du dernier paramètre de la fonction window.cpp/debug change, il suffit d'ajouter un const dans la déclaration du dernier paramètre.

ligne 230 :
static
void GLAPIENTRY debug( GLenum source, GLenum type, unsigned int id, GLenum severity, GLsizei length, const char *message,
void *userParam )

à remplacer par :

static
void GLAPIENTRY debug( GLenum source, GLenum type, unsigned int id, GLenum severity, GLsizei length, const char *message,
const void *userParam ) //!< const

erreur lors du link / édition de liens :

par défaut les projets essayent de générer la version 32bits des applications, selon votre système, ce n'est pas possible ou obligatoire...

configurations générées :