Bonjour,
J'ai implémenté du deferred shading/lighting dans mon moteur et cela fonctionne bien. J'aimerais bien introduire le normal mapping mais je ne vois pas comment faire cela.
- Sans deferred shading, c'est super simple: on calcule un vecteur dans l'espace tangent dans le vertex shader: "tbnDirToLight = tbnMatrix * (light.position - vertex)". Dans le fragment shader, il suffit de faire un 'dot product' avec la normal de la normal map et avec notre vecteur 'tbnDirToLight'.
- Avec du deferred shading: comment faire ? Calculer mon vecteur 'DirToLight' dans l'espace tangent dans mon fragment shader ? Ca risque d'être très lourd, non ?
Merci d'avance.
Partager