Collision entre objets 3D [Résolu]

Messages postés
38
Date d'inscription
jeudi 13 mars 2008
Dernière intervention
9 décembre 2011
- - Dernière réponse : mmaximum
Messages postés
38
Date d'inscription
jeudi 13 mars 2008
Dernière intervention
9 décembre 2011
- 20 mars 2008 à 13:28
Salut à tous,

Je suis nouveau sur le forum. Je sais déja bien programmé(c/c++, python, xhtml/html, css, javascript,...)
Je suis en train de développer un jeu de tir 3D en c++ avec son moteur de jeu.
J'ai un problème majeur : dans la programmation de mon moteur de jeu, je souhaite faire le calcule des collisions moi même mais j'ai pas le niveau en math(je suis en 4èmes). Pouvez vous m'indiquer des tutoriaux ou autres. Je ne trouve rien d'intéressant sur google. Des petits code en c++ serait les bien venu .

Petite précision : je ne cherche pas à savoir si 2 objets se touchent, mais à savoir comment calculer les rebond et collision.

Merci d'avance
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Dernière intervention
28 juillet 2008
3
Merci
Je sais meme pas si il y a des tutoriels pour expliquer ca. Si tu maitrises les bases de l'aglèbre linéaire, il n'y a rien de plus simple que de calculer un rebond.

Soit N le vecteur normal normé et V la vitesse incidente. La vitesse après le choc vaut:
V' = V - 2 (N scalaire V) * N

Merci luhtor 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 105 internautes ce mois-ci

Commenter la réponse de luhtor
Messages postés
968
Date d'inscription
samedi 3 avril 2004
Dernière intervention
4 mars 2010
0
Merci
Comme tu dis, je pense pas que tu aies le niveau en maths, c'est pas un problème très simple...
Commenter la réponse de cs_juju12
Messages postés
38
Date d'inscription
jeudi 13 mars 2008
Dernière intervention
9 décembre 2011
0
Merci
Ne vous inquiété pas, pour les maths, je comprendrais tous ce que vous metterez!
Je connais quand même les vecteurs, les matrices, et pleins d'autre chose.
Je sais bien entendu les utiliser.
Ca serait vraiment gentil de votre part de me donner au moin l'adresse d'un tutoriel.
Commenter la réponse de mmaximum
Messages postés
38
Date d'inscription
jeudi 13 mars 2008
Dernière intervention
9 décembre 2011
0
Merci
Merci beaucoup luthor, c'est déjà un début.
Mais j'aimerais les formules pour calculer les chocs entre:
-2 sphères
-1 sphère et 1 cube
-2 cubes
-un quadrilatère et 1 sphère
-un quadrilatère et 1 cube

Merci d'avance
Commenter la réponse de mmaximum
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Dernière intervention
28 juillet 2008
0
Merci
La relation est valable dans tous les cas. Faut juste déterminer le vecteur normal au point d'impact.

Autant le rebond entre deux sphères du pourrais y arriver, mais le rebond entre deux cubes. Abandonnes tout de suite, tu vas perdre ton temps sauf si tu trouves un code tout fait. Pareil pour un cube sur une sphère, c'est compliqué.
Commenter la réponse de luhtor
Messages postés
38
Date d'inscription
jeudi 13 mars 2008
Dernière intervention
9 décembre 2011
0
Merci
Je n'abandonnerai jamais!!!
J'ai trouvé ce site
http://darkwood91.free.fr/pagesperso/choc3d/physics.php
C'est déjà un début, il y a les collision entre plusieurs sphères.
Pour le calcule de gravité, je sais déjà le faire depuis bien longtemps(depuis la 6èmes)
Commenter la réponse de mmaximum
Messages postés
968
Date d'inscription
samedi 3 avril 2004
Dernière intervention
4 mars 2010
0
Merci
A la limite y avait la source deJCDjcd qui était assez jolie :
http://www.cppfrance.com/codes/SIMULATION-REBOND-SUR-MUR_44546.aspx
Commenter la réponse de cs_juju12
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Dernière intervention
28 juillet 2008
0
Merci
Les sphères ne posent aucun problème, c'est les cubes qui sont compliqués. Il faut non seulement maitriser la théorie (un peu de mécanique basique), mais également choisir une technique de résolution approchée.
Commenter la réponse de luhtor
Messages postés
38
Date d'inscription
jeudi 13 mars 2008
Dernière intervention
9 décembre 2011
0
Merci
Merci a vous tous pour vos réponses.
J'ai un autre problème:
J'ai une boudding sphere pour un bonhomme dans mon jeu et j'ai une surface(le terrain) composé de quadrilatère et de triangle et avec des murs. J'aimerai géré les déplacement du bonhomme avec sa boudding sphère sur le terrain, mais sans les rebonds( un homme qui marche sur un terrain ne rebondit pas, même quand il tombe de haut).
Quelqu'un c'est comment faire??
Sinon y a-t-il une meilleur solution pour gérer les déplacements des joueurs????
Commenter la réponse de mmaximum

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.