Un moteur 3D maison écrit en C++/OpenGL pour apprendre et expérimenter — cameras, éclairage, skybox, chargement de meshes OBJ.

Features
- Moteur OpenGL — boucle principale avec
onCreate/onUpdate/onDestroy - Mesh 3D — chargement de fichiers
.objavec support de flip vertical - Textures — textures 2D et cubemaps
- Caméras — FPS et Orbit, avec contrôle souris/clavier
- Éclairage — lumière directionnelle, points de lumière (x3) et spot light
- Skybox — rendu cubemap en arrière-plan
Dépendances
Build
mkdir build
cd build
cmake ..
make
./CoursOpenGl
Structure
.
├── include/ # Headers (Engine, Camera, Mesh3D, Lighting, Skybox…)
├── src/ # Sources C++
│ ├── main.cpp
│ ├── onCreate.cpp
│ ├── onUpdate.cpp
│ └── onDestroy.cpp
└── CMakeLists.txt
Utilisation rapide
#include "engine.h"
int main() {
djalim::OpenGlEngine engine("Mon app", 800, 600);
engine.start();
return 0;
}
Les objets sont chargés via createObject dans onCreate.cpp :
engine.createObject("cube", "textures/bois.png", "models/cube.obj");