8000 GitHub - nidabrahim/Solar-System: OpenGL, Shaders, VBO
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

nidabrahim/Solar-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Système solaire

Création d’un rendu graphique OpenGL

Il s'agit de faire une visualisation du système solaire (Soleil, Terre et la Lune) grâce à un programme OpenGL. La bibliothèque OpenGL est une interface de programmation regroupant un ensemble de fonctions permettant de générer des images 2D et 3D.
L’objectif de ce mini projet est d’introduire et de pratiquer les notions principales du pipeline OpenGL à travers la mise en place d’un mini système solaire. Ce dernier inclut la terre, qui tourne sur son axe et est en révolution autour du soleil. Il y a également la lune qui est en révolution autour de la terre.
Vue l'architecture de l'application réalisée, vous pouvez continuer à rajoutant d’autres planètes et leurs lunes pour former un système solaire complet.

Table des matières

Dépendances

Installation

Pour lancer le projet, exécuter ces commandes :

mkdir build
cd build
cmake ..
make
./solar_system

Diagramme de classe

Architecture de code

├── includes
│   ├── shaders
│   │   ├── earth.frag
│   │   ├── earth.vert
│   │   ├── moon.frag
│   │   ├── moon.vert
│   │   ├── skybox.frag
│   │   ├── skybox.vert
│   │   ├── sun.frag
│   │   └── sun.vert
│   └── textures
│       ├── earth
│       │   ├── morning
│       │   │   ├── earth_xn.png
│       │   │   ├── earth_xp.png
│       │   │   ├── earth_yn.png
│       │   │   ├── earth_yp.png
│       │   │   ├── earth_zn.png
│       │   │   └── earth_zp.png
│       │   └── night
│       │       ├── earth_xn.png
│       │       ├── earth_xp.png
│       │       ├── earth_yn.png
│       │       ├── earth_yp.png
│       │       ├── earth_zn.png
│       │       └── earth_zp.png
│       ├── moon
│       │   ├── moon_xn.png
│       │   ├── moon_xp.png
│       │   ├── moon_yn.png
│       │   ├── moon_yp.png
│       │   ├── moon_zn.png
│       │   └── moon_zp.png
│       ├── skybox
│       │   ├── skybox_xn.png
│       │   ├── skybox_xp.png
│       │   ├── skybox_yn.png
│       │   ├── skybox_yp.png
│       │   ├── skybox_zn.png
│       │   └── skybox_zp.png
│       └── sun
│           └── sun_colors.png
├── CMakeLists.txt
├── src
│   ├── engine
│   │   ├── camera.cpp
│   │   ├── camera.hpp
│   │   ├── Engine.cpp
│   │   ├── Engine.hpp
│   │   ├── EventHandler.cpp
│   │   ├── EventHandler.hpp
│   │   ├── glmUtils.cpp
│   │   ├── glmUtils.hpp
│   │   ├── shader.cpp
│   │   ├── shader.hpp
│   │   ├── shader_object.cpp
│   │   ├── shader_object.hpp
│   │   ├── texture_object.cpp
│   │   └── texture_object.hpp
│   ├── geometry
│   │   ├── cube.cpp
│   │   ├── cube.hpp
│   │   ├── sphere.cpp
│   │   └── sphere.hpp
│   ├── main.cpp
│   ├── models
│   │   ├── earth.cpp
│   │   ├── earth.hpp
│   │   ├── moon.cpp
│   │   ├── moon.hpp
│   │   ├── skybox.cpp
│   │   ├── skybox.hpp
│   │   ├── sun.cpp
│   │   └── sun.hpp
│   ├── SConstruct
│   ├── solar_system.cpp
│   ├── solar_system_globals.hpp
│   └── solar_system.hpp
└── UML
    └── ClassDiagram.pdf

Réalisations

  • Programmation par Shaders et VBO
  • Shadow Mapping
  • Application de textures sur les Objets 3d
  • Affichage d’une scène 3D contenant plusieurs objets
  • Déplacement de la caméra dans la scène
  • Eclairage Ambiant
  • Eclairage spéculaire sur certains objets
  • Skyboxes

About

OpenGL, Shaders, VBO

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0