Historique des modifications - Message

Message #11115

Sujet: Création d'une Animation skeleton (Bone)


TypeDateAuteurContenu
Dernière modification05-03-2013 14:16:59jonath313
Je t'avouerai que je n'ai pas trop compris ton dernier message. Un "cast" vers une int ? Une union ?

En fait ce que je veux réaliser c'est çà :


^e.Y (rotation de l'os)
|
|
|------ . (e.Y = -60)
| . .
| . .
| . .
| . .
| . .
| . .
|. .
  • ----------------------------------------> temps

. .
. .
. .
. .
. .
  • -------------------. (e.Y = 30)



J'ai dans un premier temps pensé à une petite fonction du genre :

e.Y = 60*sin(temps/10);

Mais le soucis c'est que dans ma fonction de mise à jour de la position je fais :

void CLEventReceiver::majPosMesh(){

float temps;
core::vector3df e = m_EnnemiJambeOS1->getRotation();

    if(m_Nperso != 0 && m_isAvance == true){            //la touche est enfoncee
        
          temps+=0.1;
         e.Y = 60*sin(temps/10);


    }
        m_EnnemiJambeOS1->setRotation(e);

}

En théorie si le temps s'incrémente de 0.1 en 0.1, je devrais avoir une belle sinusoïde et ma rotation devrait varier de 60° à - 60°.

Mais j'ai l'impression que ma variable "temps" ne s'incrémente pas...
Création du message05-03-2013 01:09:02jonath313
Je t'avouerai que je n'ai pas trop compris ton dernier message. Un "cast" vers une int ? Une union ?

En fait ce que je veux réaliser c'est çà :


^e.Y (rotation de l'os)
|
|
|------ . (e.Y = -60)
| . .
| . .
| . .
| . .
| . .
| . .
|. .
  • ----------------------------------------> temps

. .
. .
. .
. .
. .
  • -------------------. (e.Y = 30)



J'ai dans un premier temps pensé à une petite fonction du genre :

e.Y = 60*sin(temps/10);

Mais le soucis c'est que dans ma fonction de mise à jour de la position je fais :

void CLEventReceiver::majPosMesh(){

float temps;
core::vector3df e = m_EnnemiJambeOS1->getRotation();

    if(m_Nperso != 0 && m_isAvance == true){            //la touche est enfoncee
        
          temps+=0.1;
         e.Y = 60*sin(temps/10);


    }
        m_EnnemiJambeOS1->setRotation(e);

}

En théorie si le temps s'incrémente de 0.1 en 0.1, je devrais avoir une belle sinusoïde et ma rotation devrait varier de 60° à - 60°.

Mais j'ai l'impression que ma variable "temps" ne s'incrémente pas...

Retour

OptionsLiens officielsCaractéristiquesStatistiquesCommunauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1441 sujets
11339 messages
Dernier membre inscrit: Saidov17
63 invités en ligne
membre en ligne: -
RSS Feed