Skip to content

Alexander7474/Bbop-2D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bbop 2D Library

GitHub License GitHub Release GitHub commits since latest release GitHub commit activity (branch) GitHub last commit GitHub top language

Bbop est un projet de librairie graphique utilisant l'api opengl ( 👉 bientît sous vulkan 👈 ).
La librairie permet de créer des jeux vidéos 2D ou des applications de bureau. Elle embarque un grand nombre d'objets en pasant par des formes géométriques et aux sprites jusqu'à la gestions de l'éclairages et des effets de lumiÚres.
Elle est principalement développée et maintenue sous linux et macOS ( je fais tous mon possible pour une sortie sur window ).

Naviguer

Installation
Static Badge
Static Badge
Static Badge
Static Badge
Static Badge

Installation

Librairies externes nécessaires

Static Badge

sudo apt-get install libglew-dev libglfw3-dev xorg-dev libfreetype6-dev libstb-dev 

Static Badge

(I use arch btw)

sudo pacman -S glew glfw stb freetype2 glm

Static Badge

brew install glew freetype glfw glm

⚠ Issue avec glfw et glm ⚠

Dans certain cas il est nécessaires d'installer glfw et glm en les compilants depuis leurs repo github.

Compiler et installer bbop

Linux

git clone https://github.com/Alexander7474/Bbop-Library.git
cd Bbop-Library
make && sudo make install

macOS

git clone https://github.com/Alexander7474/Bbop-Library.git
cd Bbop-Library

Avant d'utiliser make pour compiler et installer bbop sur macOS il faut modifier le makefile selon commentaires de celui ci.

make && sudo make install

Compiler un projet

Linux

g++ -I/usr/include/freetype2 -c main.cpp -o main.o
g++ main.o -o final -std=c++11 -Wall -lbbop -lGLEW -lGL -lglfw -lfreetype

macOS

g++ -I/opt/homebrew/Cellar/freetype/2.13.2/include/freetype2 -I/opt/homebrew/Cellar/glew/2.2.0_1/include -I/usr/local/include/GLFW -c main.cpp -o main.o
g++ main.o -o final -std=c++11 -Wall -lbbop -L/opt/homebrew/Cellar/freetype/2.13.2/lib -L/opt/homebrew/Cellar/glew/2.2.0_1/lib -framework Cocoa -framework OpenGL -framework IOKit -lfreetype  -lglfw3 -lGLEW.2.2.0

Exemple

int main()
{
    //creation de la fenĂȘtre glfw
    GLFWwindow * window;
    //initialisation de la lib
    bbopInit(1920,1080,"window name",window);
    //main while loop
    while (!glfwWindowShouldClose(window))
    {
      // clear de la fenĂȘtre en noire
      bbopCleanWindow(window,Vector3i(0,0,0),1.0f));
    
      ///////////////
      // ton code ici
      ///////////////
    
      // vérification des erreurs
      bbopErrorCheck();
      // swap du back buffer avec le front buffer
      glfwSwapBuffer(window);
      // recupération des events glfw
      glfwPollEvents();
    }
    // destruction de la fen^tre et fin de glfw
    glfwDestroyWindow(window);
    glfwTerminate();

    return 0;
}

Report Bug

Merci d'avance de votre contribution au projet.

Static Badge

Supporting

La librairie est libre de droit, merci d'avance de votre soutien.

Static Badge

Contributors

Static Badge