Historique des modifications - Message

Message #9379

Sujet: Système de collisions de type RPG


Type Date Auteur Contenu
Création du message 20-01-2011 08:56:12 tmyke
Non, je n'ai pas de tuto en tête spécifique à la gestion des collisions simple.
Mais avec la doc on peut s'en sortir assez facilement.

Pour résumer, voici la méthode générale.

Il te faut créer tout d'abord les shape des objet dont tu veux tester les collisions, normal, faut
bien que Newton ai un semblant de géométrie en tête.
par exemple, pour un cube cela donne cela:

Code c++ :

NewtonCollision *shapeBox = NewtonCreateBox( World, sizex, sizey, sizez, id, NULL);

maintenant si je veux tester si deux éléments sont en collision, il suffit de faire:

Code c++ :


#define MAXPOINTCOLLIDE 64
static float	contacts[MAXPOINTCOLLIDE*3];
static float	normals[MAXPOINTCOLLIDE*3];
static float	penetration[MAXPOINTCOLLIDE*3];

int res = NewtonCollisionCollide( World, MAXPOINTCOLLIDE, shapeBox1, matrixBox1.pointer(), shapeBox2, matrixBox2.pointer(), 
					contacts,normals,penetration, 0);

voilà c'est tout. Avec les explications de la doc, tu n'auras pas vraiment de soucis pour la mise en oeuvre...

il y a par exemple NewtonCollisionPointDistance et surtout NewtonCollisionRayCast qui se rendent
bien utile aussi pour tous les test de collisions avec nos environements...

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