=== Partie II ===
Consigne à respecter Uniquement si vous avez validé toutes les étapes de la partie I avec votre intervenant, vous pouvez maintenant traiter la partie II du projet.
Consigne à respecter Avant de passer à la partie II, votre programme doit être structuré, autant sur la partie POO que sur la partie illumination. Votre capacité à traiter les sujets proposés dans la suite dépend fortement de la qualité du code existant.
Amélioration du moteur 3D
Nous vous proposons trois options pour faire passer votre moteur de rendu 3D au niveau supérieur :
1 - La technique des Virtual Point Lights qui simulent les rayons de niveau 2 en créant des milliers de sources lumineuses issues de rayons de niveau 1.
2 - La technique du Pathtracing qui simule de nombreux parcours de rayons lumineux en chemin inverse ceci depuis le le point dans la scène associé au pixel dont on recherche la couleur.
3 - La technique du Raytracing, qui effectue un parcours en chemin inverse par pixel de la caméra, ceci en faisant rebondir ce rayon de multiples fois dans la scène. Cette technique permet de gérer les matières transparentes et les objets réfléchissants.
Pour les méthode 1 et 2, nous vous indiquerons comment générer de manière homogène des directions aléatoires.
Effets graphiques
Ici, nous vous proposons des options pour ajouter des effets graphiques dans votre projet. Voici la liste des options proposées :
Calculs en multithread
Gestion des Mesh
Ombres douces / Soft Shadow
Surfaces de révolution
Comment choisir ?
Divers critères interviennent dont principalement le temps qu’il vous reste sur le projet.
Consigne à respecter Discutez de vos choix ou de vos questionnements avec l’intervenant pour les valider. Partir sur une mauvaise route peut faire perdre du temps inutilement.
Pour le moteur de rendu, une seule option peut être implémentée sur les trois proposées. Chaque technique produit des images de qualité. Les VPL et le Pathtracing sont cependant plus à la mode en ce moment.
Pour obtenir la note maximale, diverses configurations sont possibles :