Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3072 connectés 

  FORUM HardWare.fr
  Programmation

  [ mini moteur 3D ] - Eclairage d'une facette ??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[ mini moteur 3D ] - Eclairage d'une facette ??

n°94017
cool_c_rao​ul
Posté le 28-01-2002 à 00:49:17  profilanswer
 

Ben voila j'ai commencé un mini moteur 3D en c++, un truc très basique enfin c'est histoire de me faire la main quoi !!
 
Est ce que quelqu'un connaitrait le calcul de la "quantité de lumière" sur une facette éclairée par une source lumineuse ?

mood
Publicité
Posté le 28-01-2002 à 00:49:17  profilanswer
 

n°94021
leirn
A.D.I.D.A.S.
Posté le 28-01-2002 à 01:07:30  profilanswer
 

G pas la formule exacte mais ca doit dependre du fluide ke la lumiere traverse, du type de la source, de pas mal de choses en fait...  
 
Essai de te trouver des cours de Sup Optique sur le net, ou alors un prof de prepa ou d'ecole d'inge ki aime bcp les forums...


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
n°94022
bjone
Insert booze to continue
Posté le 28-01-2002 à 01:11:36  profilanswer
 

tu as la normale de la facette ?
tu prends un point moyen de la facette...  
et tu fais un produit scalaire entre la normale de la facette, et le vecteur point_moyen->source_lumière (normalisé), et tu as une valeur entre -1 et 1,cosinus de l'angle entre les 2 vecteurs, qu'il faut donc limiter entre 0 et 1.

n°94023
bjone
Insert booze to continue
Posté le 28-01-2002 à 01:13:34  profilanswer
 

ou sinon encore + simple, tu considère que la source de lumière est très éloignée, donc tous les rayons sont //, t'as juste à faire le produit scalaire de la normale avec un vecteur constant.

n°94034
LeGreg
Posté le 28-01-2002 à 02:44:09  profilanswer
 

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


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [ mini moteur 3D ] - Eclairage d'une facette ??

 

Sujets relatifs
[Site web] Un bon moteur de recherche pour son site ?[PHP] moteur de recherche (tout petit :D)
[3D]moteur[html] hauteur mini d'une cellule
Javascript faire un moteur de recherche interne à mon siteArchitecture d'un moteur 3d
Komment c'est u moteur de jeu??[php] moteur de recherche avec mysql
[Programassion Grafik] Kréassion d'1 moteur 3D[PHP] [mySQL] moteur de recherche
Plus de sujets relatifs à : [ mini moteur 3D ] - Eclairage d'une facette ??


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR