|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Développeur informatique Inscription : octobre 2012 Messages : 7 ![]() |
Bonjour,
cela fait un moment que je cherche une façon de détecter dans quel côté à lieu la collision avec un rectangle(tile). je veux savoir si c'est à gauche, haut, bas ou à droite. J'arrive à détecter la collision avec un tile, ça ce n'est pas un problème, mais je voudrais juste détecter de quel côté je touche ce tile. Cette fonction, je souhaite évidement le faire après avoir détecter une collision avec un tile. Un extrait de mon code actuel(qui ne marche pas): Code :
Si quelqu'un pouvait m'aider, ce serait sympa. |
||
|
|
00
|
|
|
#2 |
|
Invité(e)
![]() Messages : n/a ![]() |
Y m'semble que c'est plus simple que ça la detection gauche droite haut bas si tu calcules les centres des rectangle
par exemple si tu as trouvé la penetration la plus courte sur x alors: Code :
if ( rectangleACentre_x > rectangleBCentre_x ) return LEFT; else return RIGHT; Sinon c'est pour quel type de jeu ? Quand on s'enquiquine à faire des bbox collision sur les tuiles c'est en général pour un jeu en vue de dessus ou iso3d pour avoir une selection super précise du renvoi sur x et y. Si c'est pour un jeu de plateforme y'a beaucoup plus simple il suffit de décomposer le mouvement sur x puis y. |
00
|
|
|
#3 | ||
|
Invité de passage
![]() Développeur informatique Inscription : octobre 2012 Messages : 7 ![]() |
Merci de ta réponse punkcoders, mais j'ai déjà trouvé ma réponse.
Voici l'algorithme utilisée pour ceux qui serait intéressé: Code :
Sinon pour te répondre, c'est un jeu vue de dessus, un RPG à l'ancienne. Il est déjà bien avancé, j'ai quasi fini le moteur du jeu. Là, je finalise l'éditeur de niveau et après, je vais commencé à créer les maps. |
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com