2012-12-31 1 views
0

Je travaille sur mon application de rendu de logiciel 3D et complètement coincé sur la foudre. J'essaie de faire l'ombrage plat. Je sais que:Comment calculer la foudre ambiante et diffuse?

a = polygonAmbient * lightSourceAmbient; //a=color of ambient 
d = polygonDiffuse * lightSourceDiffuse * dot (polygonNormal , lightPosition) ; 
//d color of diffuse 
    polygon->color= a+d; 

Qu'est-ce polygonAmbient et polygondiffuse dois-je utiliser? Est-ce la même valeur RVB pour les deux? Et qu'en est-il de lightSourceAmbient et lightSourceDiffuse.? Thx

Répondre

2

Les ambiances polygonales et les diffusions polygonales ne doivent pas nécessairement avoir les mêmes valeurs. Par exemple, vous pouvez avoir un objet gris qui devient vert lorsqu'il est allumé. Un exemple d'une telle chose est une peinture de voiture moderne (il a une base de couleur solide avec des taches de peinture suspendues dans un pardessus transparent

Source de lumière ambiante et source de lumière diffuse sont également pourraient être des couleurs différentes.Par exemple au coucher du soleil, vous obtenez le éclairage bleu ambiant de l'atmosphère + très fort éclairage rouge/orange du soleil

+0

"qui s'allume en vert lorsqu'il est éclairé" - vous voulez dire "non éclairé"? –

Questions connexes