ok ^^
bah ca revient a construire une matrice de rotation 3x3 avec chacun des axes de la nouvelle base qui represente ton tangent-space en viewspace quoi
'tangent' c'est l'axe X de la base, 'normal' c'est l'axe Y, et binormal (donc tangent.w * cross(tangent.xyz, normal)), c'est l'axe Z
donc ca te fait la matrice:
| tangent.x tangent.y tangent.z |
| normal.x normal.y normal.z |
| bitangent.x bitangent.y bitangent.z |
(la notation, c'est le layout memoire GL et DX, pas la notation mathematique utilisee par GL pour representer les matrices (par contre il me semble que DX les note comme ca (ouai, GL c'est vachement logique, ils utilisent une notation donnee, mais en memoire c'est stocke dans l'autre sens
(bref))))
multipliee par le vecteur qui represente la normale en tangent-space, pour obtenir la tangente en viewspace