bien le bonsoir a tous mon projet commence à aboutir cependant j'ai rencontré un dernier problème je n'arrive plus a déplacer mon personnage (alors que mes animations marchent plus très bien pour une fois!!!)
Voila ma situation :
variables utiles :
ISceneNode* nodeG=0; //il s'agit en fait d'un simple cube situé derriere la camera qui permet d'y attacher la
//cam et le perso, ainsi, j'effectue les translation seulement sur ce noeud
IAnimatedMeshSceneNode* nodePerso=0;
IAnimatedMesh* meshPerso=0;
IAnimatedMesh* meshPersoGauche=0;
fonction de chargement du perso :
void chargementPerso()
{
//chargement des differents mesh du perso :
meshPerso = smgr->getMesh("../media/pandaAnimNormal.X");
meshPersoGauche = smgr->getMesh("../media/PandaAnimGauch.X");
//initialisation du noeud :
nodePerso = smgr->addAnimatedMeshSceneNode(meshPerso);
//gestion de l'animation du perso
nodePerso->setLoopMode(false);
//le personnage est attaché au noeud nodeG
nodeG->addChild(nodePerso);
};
classe evenement :
class RecepteurEvenement : public IEventReceiver{
public:
virtual bool OnEvent(SEvent event)
{
if (nodePerso != 0 && event.EventType == irr::EET_KEY_INPUT_EVENT)
{
switch(event.KeyInput.Key){
case KEY_LEFT:{
if(!rotatGauche) {
//mis a jour des booléens :
posOriginal = false;
rotatGauche = true;
rotatDroite = false;
rotatArriere = false;
//chargement de l'anim :
nodePerso->drop();
nodePerso = smgr->addAnimatedMeshSceneNode(meshPersoGauche);
nodePerso->setLoopMode(false);
nodeG->addChild(nodePerso);
}
core::vector3df v = nodeG->getPosition();
v.X -= 4.0f;
nodeG->setPosition(v);
break;
}
// idem pour les autres touches
}
}
return false;
}
};
class animation :
class IdleAnimatorNode : public ISceneNodeAnimator{
public :
virtual void animateNode(ISceneNode * node,u32 timeMs){
//utilisé pour le déplacement automatique
core::vector3df v = node->getPosition();
v.Z += 0.25f;
node->setPosition(v);
}
};
utilisation :
void animation(){
//j'attache l'animateur au noeud nodeG
IdleNode = new IdleAnimatorNode;
IdleNode->animateNode(nodeG,15);
nodeG->addAnimator(IdleNode);
IdleNode->drop();
}
J'espere ne pas trop abuser de votre gentillesse vous m'avez déjà bien aidé mais la j'avoue que je ne sais plus quoi faire.....donc si vous voyez quelques choses qui ne semble pas normal faites moi signes svp

@bientot ^^