Historique des modifications - Message

Message #9432

Sujet: Système de collisions de type RPG


Type Date Auteur Contenu
Création du message 21-01-2011 15:39:31 tmyke
c'est beaucoup plus simple que cela, NewtonCollisionRayCast regarde si il y a une collision entre un shape, et un vecteur dont tu fournis les deux extrémités.
exemple de codage:

Code c++ :


	float normals[128];
	int face_id; 
	core::vector3df origin(x,y,z);
	core::vector3df end(dx,dy,dz);
	core::matrix4 mat, inv;

	mat = ent->getAbsoluteTransformation();
	mat.getInverse( inv );
		//
	inv.transformVect( origin );
	inv.transformVect( end );

	float val = NewtonCollisionRayCast( collision ,&origin.X, &end.X, normals , &face_id); 

val est compris entre 0 et 1 si il y a collision et il représente la distance entre l'origine du vecteur et la collision.

Voilà, en espérant que tu y vois plus clair wink

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