|
Dernière modification
|
05-08-2010 16:32:43
|
mr.xyz
|
firnafin Ecris:setRotation définie une rotation dans le repere parent. Par exemple supposons que la normale soit (1,1,1) et que tu ais fait la rotation selon X et Z comme ci dessu ,si tu rajoutes une composante selon Y de 45 alors le vecteur (0,1,0) de ton perso va se retrouvée en (0,quelque chose,quelque chose) ce qui est différent de (1,1,1).
Je ne comprends pas trop ce que tu veux dire :p : - le repère parent standard c'est bien le repère général, celui de la scène? (simple question ^^)
- de quelle normale parles tu, celle du terrain ou du mesh ?
- une composante Y de 45 => tu veux dire une rotation de 45 ° pour tourner le personnage ?
firnafin Ecris:ce qu'il faut faire c'est faire tourner la node dans son repere selon Y. Pour ce faire tu récupères la matrice de la node par m=node->getTransformation() puis tu recupére l'axe Y perso_y=m.rotateVect(0,1,0) puis node->setRotation(angle_souhaité*perso_y)
- l'angle souhaité est le vecteur de rotation, avec Y à 0 comme tu disais ?
- rotateVect est de type void, je pense donc que tu voulais dire de créer un vector (0,1,0) et de le passer en passer en référence ?
- ensuite setRotation prends en paramètre un vecteur, donc je ne comprends pas "angle_souhaité*perso_y"
Merci d'avance
|
|
Création du message
|
05-08-2010 14:10:56
|
mr.xyz
|
firnafin Ecris:setRotation définie une rotation dans le repere parent. Par exemple supposons que la normale soit (1,1,1) et que tu ais fait la rotation selon X et Z comme ci dessu ,si tu rajoutes une composante selon Y de 45 alors le vecteur (0,1,0) de ton perso va se retrouvée en (0,quelque chose,quelque chose) ce qui est différent de (1,1,1).
Je ne comprends pas trop ce que tu veux dire :p : - le repère parent standard c'est bien le repère général, celui de la scène? (simple question ^^)
- de quelle normale parles tu, celle du terrain ou du mesh ?
- une composante Y de 45 => tu veux dire une rotation de 45 ° pour tourner le personnage ?
firnafin Ecris:ce qu'il faut faire c'est faire tourner la node dans son repere selon Y. Pour ce faire tu récupères la matrice de la node par m=node->getTransformation() puis tu recupére l'axe Y perso_y=m.rotateVect(0,1,0) puis node->setRotation(angle_souhaité*perso_y)
- l'angle souhaité est le vecteur de rotation, avec Y à 0 comme tu disais ?
- rotateVect est de type void, je pense donc que tu voulais dire de créer un vector (0,1,0) et de le passer en passer en référence ?
- ensuite setRotation prends en paramètre un vecteur, donc je ne comprends pas "angle_souhaité*perso_y"
Merci d'avance
|