Pages: 1
Salut,
Je fais un MMORPG mais j'ai un probleme, je ne sais pas comment mettre plusieur gestions de la collision.
J'ai déja un system de ce type pour le terrain mais il y a des batiments et la la camera passe à travers les murs.
Comment faire?
Merci d'avance.
Gp2mv3
Hors ligne
il faut utilisé le metaSelector :
scene::IMetaTriangleSelector* metaSelector = smgr->createMetaTriangleSelector();
metaSelector->addTriangleSelector(selectormap);
metaSelector->addTriangleSelector(selectormaison);
...
scene::ISceneNodeAnimatorCollisionResponse* choc = smgr->createCollisionResponseAnimator(metaSelector, camera, core::vector3df(45,75,45), core::vector3df(0,-15,0), core::vector3df(0,50,0));
camera->addAnimator(choc);
Si ta des questions...
a+
w
Hors ligne
J'ai éssayé mais je ne comprends pas bien comment l'utiliser avec un terrain.
Voici le code pour la simple colision avec le terrain :
//Les collisions
scene::ITriangleSelector* selector = smgr->createTerrainTriangleSelector(nsol, 0);
nsol->setTriangleSelector(selector);
ISceneNodeAnimatorCollisionResponse* collider;
collider = smgr->createCollisionResponseAnimator(
selector, camera, core::vector3df(25,50,25),
core::vector3df(0, nsol ? -2.5 : 0.0,0),
core::vector3df(0,45,0), 0.005f);
camera->addAnimator(collider);
collider->drop();
Je ne sais pas trop si je dois déclarer les selecteur avant de mettre ton code ou pas.
Merci d'avance.
Gp2mv3
Hors ligne
Tu dois d'abord créer le TriangleSelector de ton terrain et de tes maisons, puis ensuite créer le MetaTriangleSelector et y ajouter les TriangleSelector :
//Les collisions scene::ITriangleSelector* selector = smgr->createTerrainTriangleSelector(nsol, 0); nsol->setTriangleSelector(selector); // le meta triangle selector scene::IMetaTriangleSelector* metaSelector = smgr->createMetaTriangleSelector(); metaSelector->addTriangleSelector(selector); // l'animator ISceneNodeAnimatorCollisionResponse* collider; collider = smgr->createCollisionResponseAnimator( metaSelector, camera, core::vector3df(25,50,25), core::vector3df(0, nsol ? -2.5 : 0.0,0), core::vector3df(0,45,0), 0.005f); camera->addAnimator(collider); collider->drop();
Le MetaTriangleSelector est un regroupement de TriangleSelector et s'utilise comme eux
Hors ligne
Merci de vos réponses.
Effectivement, ton code fonctionne Aranoth.
Merci de votre aide.
Gp2mv3
Hors ligne
Pages: 1
Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
---|---|---|---|---|
Corrections |
|
xhtml 1.0 css 2.1 Propulsé par FluxBB Traduit par FluxBB.fr |
882 membres 1429 sujets 11119 messages |
Dernier membre inscrit: LiseBuisson96 32 invités en ligne Aucun membre connecté RSS Feed |