Collision entre objets 3D [Résolu]

mmaximum 38 Messages postés jeudi 13 mars 2008Date d'inscription 9 décembre 2011 Dernière intervention - 18 mars 2008 à 17:40 - Dernière réponse : mmaximum 38 Messages postés jeudi 13 mars 2008Date d'inscription 9 décembre 2011 Dernière intervention
- 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 

9 réponses

Répondre au sujet
luhtor 2023 Messages postés mardi 24 septembre 2002Date d'inscription 28 juillet 2008 Dernière intervention - 19 mars 2008 à 13:08
+3
Utile
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
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de luhtor
cs_juju12 968 Messages postés samedi 3 avril 2004Date d'inscription 4 mars 2010 Dernière intervention - 18 mars 2008 à 22:23
0
Utile
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
mmaximum 38 Messages postés jeudi 13 mars 2008Date d'inscription 9 décembre 2011 Dernière intervention - 19 mars 2008 à 12:45
0
Utile
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
mmaximum 38 Messages postés jeudi 13 mars 2008Date d'inscription 9 décembre 2011 Dernière intervention - 19 mars 2008 à 14:11
0
Utile
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
luhtor 2023 Messages postés mardi 24 septembre 2002Date d'inscription 28 juillet 2008 Dernière intervention - 19 mars 2008 à 17:15
0
Utile
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
mmaximum 38 Messages postés jeudi 13 mars 2008Date d'inscription 9 décembre 2011 Dernière intervention - 19 mars 2008 à 19:33
0
Utile
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
cs_juju12 968 Messages postés samedi 3 avril 2004Date d'inscription 4 mars 2010 Dernière intervention - 19 mars 2008 à 21:01
0
Utile
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
luhtor 2023 Messages postés mardi 24 septembre 2002Date d'inscription 28 juillet 2008 Dernière intervention - 20 mars 2008 à 13:00
0
Utile
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
mmaximum 38 Messages postés jeudi 13 mars 2008Date d'inscription 9 décembre 2011 Dernière intervention - 20 mars 2008 à 13:28
0
Utile
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.