Skip to content

sousav/Raytracer-EPITECH

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Raytracer-EPITECH

Note : 38.5

Projet Raytracer

Un raytracer est un algorithme de rendu 3D, très différent des algorithmes de rendu utilisés dans l'industrie du jeu vidéo. C'est une méthode de rendu appelée "ray tracing" qui fonctionne par calculs d'intersections, c'est une méthode très coûteuse en termes de puissance de calcul ce qui la rend inutilisable pour le rendu en temps réel. Cependant, c'est une méthode de rendu qui permet de se rapprocher le plus possible d'un rendu photo-réaliste, ce qui en fait la méthode de prédilection pour le rendu d'effets spéciaux au cinéma par exemple.

Screenshot

alt text

alt text

alt text

alt text

alt text

Rendu

- Raytracer en C
- Editeur du fichier de scène (XML) en ligne de commande
- Raytracer en CPP
- Interface graphique du Raytracer CPP avec QT
- Serveur de clustering pour un rendu plus rapide en réseaux
  Gestion de droit sur le server et chat en ligne pendant le rendu
  entre les ordinateurs connecté
- Une (voir deux) bonne dose de bonus graphique! :D

Notation

  • Préliminaires (2 / 2) : RAS
  • Savoir-vivre (0 / 0) : Tous le groupe est en costume.
  • Norme et warnings (0 / 0) :
  • Initiative (0.5 / 0.5) : Le groupe prend l'initiative pour sa présentation.
  • Tenue vestimentaire (0.5 / 0.5) : Groupe en costume
  • Plan (1 / 1) : Un support PPT est utilisé. La progression est logique.
  • Qualité orale de la présentation (1 / 1) : Les fonctionnalitésdu projets sont mises en valeur, le discours est globalement clair.
  • Qualité du support de présentation (1.5 / 1.5) : Le support de présentation est propre, sans faute, des illustrations pertinentes sont utilisées.
  • Le projet fait parti de la présentation.
  • Partage du temps de parole (0.5 / 0.5) : Le groupe se partage le temps de parole.
  • Chargement de carte (0 / 0) : OK
  • Fenêtre (0 / 0) : OK
  • Sphère, Plan, Cylindre, Cône (0 / 0) : OK
  • Translations et Rotations (0 / 0) : OK
  • Spot et Ombres (0 / 0) : OK
  • Brillance (0 / 0) : OK
  • Lumière d'ambiance (0.5 / 1) : Lumière d'ambiance, couleur non configurable
  • Objets limités (1 / 2) : cylindre et cône limité, triangle
  • Format du fichier de scène (1 / 1) : Format XML
  • Réflexion (2.5 / 2.5) : Réflexion avec limitation, intérieur d'objets réfléchissant
  • Transparence (1 / 2) : Transparence avec réfraction
  • Lumière directe (0.5 / 1) : Pas d'éblouissement après réfraction
  • Perturbations de la normale (2 / 2) : Bump-map, tôle ondulée
  • Perturbations de la couleur (3 / 4) : Damier
  • Bruit de perlin
  • Texture (1 / 2) : Texture sur sphere, skybox
  • Objets composés (0.5 / 0.5) : Pilule
  • Perturbations de caractéristique (1 / 1) : Indice de réfraction, coeefficient de réflexion, taux de transparence
  • Objets négatif (0 / 2) : Non géré
  • Image de fond (0.5 / 0.5) : OK
  • Stéréoscopie (0 / 0.5) : Pas de stéréoscopie
  • Menu (0.5 / 0.5) : Une interface a été réalisée en C++ avec QT
  • Barre de chargement (0.5 / 0.5) : Pas de barre de chargement mais la génération s'affiche étape par étape
  • Import de formats du commerce (1 / 2) : Gestion des .OBJ
  • Plugin (1 / 2) : Triangle, pilule en supplément
  • Modification de la scène en fonctionnement (0.5 / 0.5) : Modification live via l'interface
  • Calcul en cluster (3 / 4) : Calcul en cluster Threads, Réseau
  • Export de l'image calculé (0.5 / 0.5) : OK
  • Ruban de Moebius (0 / 6) : Pas de ruban de Moebius
  • Objets exotiques autre (0 / 4) : Pas d'autres objets supplémentaires
  • Bonus à la carte (10 / 10) : Filtres de couleur (noir et blanc, sepia, negatif), Matériaux procéduraux (matériaux prédéfinis (bois, marbre, arc en ciel, circulaire), Chat sur le clustering en réseau, Gestion de droits sur le client du cluster, Stockage en ligne (sur le serveur) de l'image générée, Edition complète en live via l'interface graphique, Anti aliasing, Skybox, Version complète du raytracer en C++, Ombres diffuses

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published