Historique des modifications - Message

Message #9379

Sujet: Système de collisions de type RPG


TypeDateAuteurContenu
Création du message20-01-2011 08:56:12tmyke
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

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