website logo
Auteur
avatar
thellier

Forum » » Création-Développement » » Oui on peut faire du bump mapping avec Warp3D/Os4


Posté : 27-11-2012 09:55 icone du post

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