Historique des modifications - Message

Message #7297

Sujet: qu'est ce qu'une normale ?


Type Date Auteur Contenu
Dernière modification 04-11-2009 15:09:23 TUpac
C'est effectivement une droite perpendiculaire à un plan. J'ai bien galéré mais j'ai fait ça sur un triangle d'un terrain afin d'orienter mon node face au terrain.
triangle3df tri;
vector3df A,B,C;
A = vector3df(cible->gpos().X + 5,    0,cible->gpos().Z); // positione les vecteurs en triangle
B = vector3df(cible->gpos().X - 3.57f,    0,cible->gpos().Z +3.57);
C = vector3df(cible->gpos().X - 3.57f,    0,cible->gpos().Z -3.57);
tri.pointA = A + vector3df(0,sol->terrain->getHeight(A.X,A.Z),0); // pose les vecteurs sur le sol
tri.pointB = B + vector3df(0,sol->terrain->getHeight(B.X,B.Z),0);
tri.pointC = C + vector3df(0,sol->terrain->getHeight(C.X,C.Z),0);

vector3df nor = tri.getNormal().normalize(); // normalize, il faut bien ...
cible->node->setRotation(nor.getHorizontalAngle()+ vector3df(-90,0,0)); // rotation de la cible

C'est un système perso qui ressemble bien à du bricolage mais ça fonctionne. J'espère que ça t'aidera.
Création du message 04-11-2009 15:08:07 TUpac
C'est effectivement une droite perpendiculaire à un plan. J'ai bien galéré mais j'ai fait ça sur un triangle d'un terrain afin d'orienter mon node face au terrain.
triangle3df tri;
vector3df A,B,C;
A = vector3df(cible->gpos().X + 5,    0,cible->gpos().Z); // positione les vecteurs en triangle
B = vector3df(cible->gpos().X - 3.57f,    0,cible->gpos().Z +3.57);
C = vector3df(cible->gpos().X - 3.57f,    0,cible->gpos().Z -3.57);
tri.pointA = A + vector3df(0,sol->terrain->getHeight(A.X,A.Z),0); // pose les vecteurs sur le sol
tri.pointB = B + vector3df(0,sol->terrain->getHeight(B.X,B.Z),0);
tri.pointC = C + vector3df(0,sol->terrain->getHeight(C.X,C.Z),0);

vector3df nor = tri.getNormal().normalize(); // normalize, il faut bien ...
cible->node->setRotation(nor.getHorizontalAngle()+ vector3df(-90,0,0)); // rotation de la cible

C'est un système perso qui ressemble bien à du bricolage mais ça fonctionne. J'espère que ça t'aidera.

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
482 invités en ligne
membre en ligne: -
RSS Feed