| |||||
| Dernière réponse | |
|---|---|
| Sujet : [ mini moteur 3D ] - Eclairage d'une facette ?? | |
| LeGreg | si tu programmes sous DirectX ou OpenGl tu peux
utiliser les modeles d'eclairages utilisées par ces API. Les modeles d'eclairages sont assez divers. Il faut d'abord decrire la reponse des materiaux. Le modele le plus general est la description BRDF qui detaille la quantité de lumière renvoyé dans chaque direction en fonction de la quantité de lumière reçue sur un element de surface (fonction qui prend deux directions en argument et renvoie l'intensite lumineuse percue). C'est un modele general et qui englobe en fait tous les autres modeles. Ce modele peut etre simplifie et decompose en trois composantes qui sont calcules localement en fonction d'une unique source (ce qui est utilise par OpenGL): une composante ambiante qui est une constante d'eclairement independante de l'angle de vision et de l'angle d'eclairage. Une composante diffuse qui est dépendante de l'angle d'eclairage par rapport à la surface. Cette composante est indépendante de l'angle de vision. (effet mat) Une composante spéculaire qui est dépendante de l'angle d'éclairage et de l'angle de vue de la surface. (effet brillant). L'ajout d'une nouvelle source consiste a ajouter les resultantes. Le modele d'eclairage géré par les cartes 3D est dit local parce qu'il ne tient pas compte des propriétés des materiaux environnants. C'est le plus utilisé parce qu'il nécessite peu de calcul. Il y a des modeles d'eclairages beaucoup plus complexes, dits globaux qui tiennent compte des interactions lumineuses entre des surfaces qui agissent comme des sources: modele de la radiosite qui n'est pas resolvable en temps reel. (mais qui peut servir a calculer des lightmaps pour des scenes statiques). La gestion des eclairages dans la 3D est un vaste sujet.. LEGREG |
| Vue Rapide de la discussion |
|---|