Forum » » Création-Développement » » Oui on peut faire du bump mapping avec Warp3D/Os4
Posté : 27-11-2012 09:55
Salut
Ben alors fait juste l'inverse utilise la couleur secondaire pour le normal mapping et
la primaire pour faire l'éclairage coloré
Par ailleurs je suis pas convaincu par ta page sur le "repère tangent"
En effet avec ma methode
1) on a déjà une équation du plan de la face avec les 3 vertex-normales du triangle
2) on a déjà une équation du plan textures avec les 3 UV du triangle
Comme je l'ai déjà écrit le problème de ma méthode c'est que les normales ne sont pas orientées vers la source lumineuse donc le calcul se fait comme si la lampe était à la place de l'observateur = je sais c un problème et il faudrait tourner (matrice de rotation vers vecteur direction lumiere) mes normales pour le résoudre (marcherait alors avec une lampe de direction quelconque mais toujours non locale)
MAIS ce qui est décrit dans ta page, Crisot, ne semble pas tourner non plus les faces vers la source lumineuse (ou semble plutot les mettre toutes face à la source lumineuse)
Bref je vois pas à quel moment tu oriente la face vers la lampe LOCALE (celle au milieu du couloir) avec la méthode décrite dans ta page
Dans l'absolu je verrai plutot la methode ainsi
Soit C le centre du triangle Soit L la lampe
Direction.x=L.x-C.x;
Direction.y=L.y-C.y;
Direction.z=L.z-C.z;
Construction d'une matrice de rotation vers Direction
Soit VN les 3 vertex-normales du triangle
transform(VN,M,3); /* transformer 3 VN avec M */
Evidemment ce serait affreusement lent de le faire par triangle et il vaudrait mieux prendre le centre de l'objet mur et tourner toutes les VN de l'objet dans cette direction lampe = cela equivaudrai à une lampe locale mais de la largeur d'un objet mur ce qui reste à mon avis réaliste
Alain
Cet article provient de Le site des utilisateurs francophones actuels et futurs d'AmigaOS 4.x
https://amiga-ng.org/viewtopic.php?topic=1414&forum=14