Historique des modifications - Message

Message #10448

Sujet: createCollisionResponseAnimator ne marche pas sur son parent ?


Type Date Auteur Contenu
Dernière modification 10-04-2012 11:53:45 akrewTik
Bonjour à tous,

Je rencontre un problème assez curieux actuellement. Un Petit bout de code :

//node = smgr->addBillboardSceneNode(terrain,irr::core::dimension2d<irr::f32>(17.0f, 17.0f),irr::core::vector3df(480, 27, 430)); //Cas 1
node = smgr->addBillboardSceneNode(0,irr::core::dimension2d<irr::f32>(17.0f, 17.0f),irr::core::vector3df(30, 10, 0)); //Cas 2

anim = smgr->createCollisionResponseAnimator
                            (selector, node,
                            core::vector3df(17, 17, 1), //la taille de ton objet (ici ta cam)
                            core::vector3df(0, -0.1, 0)); //la gravité
                            node->addAnimator(anim);
anim->drop();

J'ai oublié de préciser que selector est le triangleSelector du terrain.

Donc ce code fonctionne à merveille dans le cas 2 mais pas du tout dans le cas1.

Dans le cas 1, la gravité est bien appliquée mais il n'y a aucune réponse à la collision. Vous noterez que la seule différence est le parent du billboard qui est le terrain dans le cas 1.

Quelqu'un serait-il en mesure de m'expliquer comment faire pour garder le lien de parenté entre le terrain et mes billboard tout en appliquant une réponse à la collision de manière à ce que mes billboard, se posent sur mon terrain ?

s'il vous plait, évitez les réponses du style : "Le tutoriel d'irrlicht montre un exemple" ==> Ok mais cet exemple ne gère pas la parenté. Et puis le problème n'est pas de faire fonctionner la fonction puisqu'elle marche si j'enlève la parenté. Le top serait un exemple que vous avez rencontré/codé sur lequel vous appliquez une gravité sur un élément fils d'un autre. Le tout si possible sans Newton ou autre moteur physique pour l'instant.

Merci de votre aide avisée !
Création du message 10-04-2012 11:52:56 akrewTik
Bonjour à tous,

Je rencontre un problème assez curieux actuellement. Un Petit bout de code :

//node = smgr->addBillboardSceneNode(terrain,irr::core::dimension2d<irr::f32>(17.0f, 17.0f),irr::core::vector3df(480, 27, 430)); //Cas 1
node = smgr->addBillboardSceneNode(0,irr::core::dimension2d<irr::f32>(17.0f, 17.0f),irr::core::vector3df(30, 10, 0)); //Cas 2

anim = smgr->createCollisionResponseAnimator
                            (selector, node,
                            core::vector3df(17, 17, 1), //la taille de ton objet (ici ta cam)
                            core::vector3df(0, -0.1, 0)); //la gravité
                            node->addAnimator(anim);
anim->drop();

J'ai oublié de préciser que selector est le triangleSelector du terrain.

Donc ce code fonctionne à merveille dans le cas 2 mais pas du tout dans le cas1.

Dans le cas 1, la gravité est bien appliquée mais il n'y a aucune réponse à la collision. Vous noterez que la seule différence est le parent du billboard qui est le terrain dans le cas 1.

Quelqu'un serait-il en mesure de m'expliquer comment faire pour garder le lien de parenté entre le terrain et mes billboard tout en appliquant une réponse à la collision de manière à ce que mes billboard, se posent sur mon terrain ?

s'il vous plait, évitez les réponses du style : "Le tutoriel d'irrlicht montre un exemple" ==> Ok mais cet exemple ne gère pas la parenté. Et puis le problème n'est pas de faire fonctionner la fonction puisqu'elle marche si j'enlève la parenté. Le top serait un exemple que vous avez rencontré/codé sur lequel vous appliquez une gravité sur un élément fils d'un autre. Le tout si possible sans Newton ou autre moteur physique pour l'instant.

Merci de votre aide avisée !

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
168 invités en ligne
membre en ligne: -
RSS Feed