PDA

Voir la version complète : Attention aux normales!



tarlack
31/03/2005, 08h54
Bonjour à tous!
Hier j'ai eu un problème de shading horrible qui a failli valoir à mon écran un vol plané à travers la fenetre. Et j'ai trouvé la solution. Donc pour éviter à certains des prises de tête, je vais expliciter le truc :
le probleme était le suivant :
http://tarlack.free.fr/img/normales/rend_normInv.jpg
le meme avec les HN :
http://tarlack.free.fr/img/normales/rend_normInv_HN.jpg
La cause en était cela :
http://tarlack.free.fr/img/normales/vue_normInv.jpg
Comme vous pouvez le voir, les polygones qui coincent ont leur normale dansle sens inverse des autres (poly couleur bleu au lieu de rouge).
donc pour résoudre le probleme, on selectionne les 2 polys, et on fait "inverser les normales". et ca donne ca :
http://tarlack.free.fr/img/normales/vue_normOk.jpg
en rendu :
http://tarlack.free.fr/img/normales/rend_normOk.jpg
et avec le HN :
http://tarlack.free.fr/img/normales/rend_normOk_HN.jpg
voila!
en esperant que ca puisse aider quelqu'un en pleine crise de nerf!

Sir Gong
31/03/2005, 09h00
Tarlack réinvente la roue :mrgreen:

Mais il est vrai qu'on a eu pas mal de jeunes membres qui se heurtent à ce genre de choses.
Donc merci pour eux. :wink:
Il y a aussi la possibilité de sélectionner l'ensemble des polys et d'appliquer la commande "aligner les normales", pour tout corriger en une fois.

Vincent
31/03/2005, 09h03
héhéhé ... c'est vrai que ça fait parti des incontournables petites choses à savoir ...

Je conseille de prendre l'habitude de régulièrement faire, en mode "polys", une selection de l'ensemble de son maillage ( Ctrl - a );
Et de faire un clic droit - aligner les normales - (désolé, je ne connais pas la manip' précise sur Mac :oops: )

Ca peut éviter de nombreuses surprises ... :wink:

(Damned ! fumé par Sir ! :mrgreen: )

tarlack
31/03/2005, 09h18
@sir gong : c'est bien pour ca que je le met dans la section debutants. Et puis, quand on n'est pas doué on n'est pas doué, jsuis bien placé pour le savoir :mrgreen: (je parle de moi ici, je ne vise donc personne)

En fait les 2 commandes liées aux normales peuvent sembler être inutile aux débutants, mais très vite on s'apercoit de leur utilité, parce que le moteur de rendu est plutot pointilleux là dessus (ceci étant certainement dù à sa partie scanline, le raytracing étant normalement insensible à ce genre de truc (enfin moi le petit moteur que j'essaye de faire est insensible au sens des normales, puisque je les bidouille pour que le rayon et la normale soient opposés (produit scalaire >= 0 =>du même coté d'un polygone) )

Pascal
31/03/2005, 12h52
Pas besoin d'être débutant pour être confronté au problème des normales. L'extrusion, par exemple, mais aussi les dynamiques et les collisions, clothilde, etc, reposent sur les normales, qui donnent la direction de départ pour un tas de fonctions. Et parfois, on n'y pense pas !

lenogre
31/03/2005, 13h15
Avec des normales inversées, vous pouvez aussi avoir des différences de teintes avec des textures.

tarlack
31/03/2005, 14h01
lenogre a dit:


Avec des normales inversées, vous pouvez aussi avoir des différences de teintes avec des textures.

ouais, notamment sur le reflet speculaire, c'est mortel ce truc quand on ne sais pas d'où ca vient, en plus ca fout tout en l'air.

pascal a dit :


L'extrusion, par exemple, mais aussi les dynamiques et les collisions, clothilde, etc, reposent sur les normales


Ah ca oui, si vous extrudez des polygones et qu'ils ne partent pas dans le meme sens, c'est que les normales ne sont pas alignées. je me suis pris la tête au début avec ca, c'etait impresionnant.