
/*! \mainpage gKit2light

gKit2light est une base de code permettant d'écrire des applications utilisant openGL.

pour l'utiliser, il faut installer quelques dépendances, selon le système que vous utilisez :
    - \ref installation

gKit2light est composé de plusieurs utilitaires :
    - window.h fournit un squelette d'application, app.h fournit une classe application de base,
    - mesh.h permet de décrire et d'afficher des objets 3d,
    - image.h et color.h permettent de charger, d'enregistrer et de manipuler des images, pixel par pixel,
    - vec.h et mat.h définissent des vecteurs, des matrices pour manipuler des transformations, des points, des vecteurs,
    - program.h permet de compiler facilement des shaders,
    - uniforms.h permet de définir les valeurs des uniforms des shaders,
    - orbiter.h permet de déplacer une caméra autour d'un objet pour l'observer, 
    - draw.h affiche un mesh pour le point de vue d'une caméra, 
    - wavefront.h permet de charger et d'enregistrer des fichiers .obj,
    - texture.h permet de charger une image et de la plaquer sur un objet,
    - text.h permet d'afficher directement du texte sur la fenetre de l'application,
    - widgets.h permet de controler l'application avec une interface graphique minimaliste.

mais il y a aussi pas mal de tutos :
    - \ref tuto_application,
    - tuto2.cpp utilisation de mesh pour décrire les sommets d'un ou plusieurs triangles et les dessiner,
    - tuto3.cpp transformations, rotation d'un triangle dans l'image,
    - tuto4.cpp utiliser une camera pour observer un objet,
    - tuto5.cpp charger un fichier .obj, utiliser une camera pour l'observer et controler la camera à la souris,
    - tuto6.cpp idem tuto5, charge une texture et la plaque sur l'objet dessiné.
    
    - tuto7.cpp, idem tuto6 mais utilise la classe App pour construire l'application,
    - tuto8.cpp, exemple d'utilisation de App::update() pour modifier la transformation de l'objet en fonction du temps,
    
    - \ref tuto_mesh_shader, dessine un objet Mesh avec un shader 'utilisateur', sans utiliser le shader par défaut, montre 
    aussi comment utiliser simplement une, ou plusieurs, textures,
    
    - \ref shader_kit.cpp est un utilitaire pour prototyper rapidement des shaders.
    
plus ceux dédiés à openGL :
    - \ref intro3d,
    - \ref glsl,
    - \ref interfaceC,
    - \ref tuto2GL,
    - \ref tuto3GL,
    - \ref tuto4GL,
    - \ref shader_reflect,
    - \ref tuto5GL,
    - \ref draw,
    - \ref framebuffer,
    - \ref time,
    - \ref storage,
    - \ref storage_texture,
    - \ref compute
    
et un utilitaire pour jouer avec les shaders, \ref shader_kit.cpp \ref shader_kit.

 */
