Bonjour à tous,
Je n'arrive pas a avoir un bon per-pixel lighting. Voici ce que j'ai:
Pour chaques pixels :
- une normale
- une couleur
- Une matrice model-view : M
- une matrice de projection : P
+ la position de la lumière
Dans mon shader programme voici ce que je fait:
Dans mon fragment programme:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 light_p_eye_coord = M*light_p; vec4 p_eye_coord = P*M*p; gl_Position = p_eye_coord; pixel_normal = M*p_normal;
Ce code ne me donne pas l'éclairage attendu, et je ne comprend pas pourquoi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 float value = max(dot(normalize(pixel_normal), normalize(light_p_eye_coord)), 0.0); gl_FragColor = object_clr * light_clr * value;
Si quelqu'un a une idée ...
Cordialement
Partager