Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Collision entre la souris et un vertex array.  (Lu 1989 fois)

0 Membres et 1 Invité sur ce sujet

Scarounet

  • Newbie
  • *
  • Messages: 5
    • Voir le profil
Collision entre la souris et un vertex array.
« le: Juillet 01, 2013, 10:50:40 am »
Salut à tous!

Je suis actuellement sur la création d'une staggered map (je n'ai pas trouvé de traduction française.. si jamais quelqu'un en a une je suis preneur).

J'ai réussi à la créer avec de jolis sprites (et ça me bouffe 20% de l'UC direct) pour voir un peu comment placer les tiles, etc. Seulement pour gérer la collision souris et sprite, j'ai un soucis car les boîtes englobantes se superposent toutes et il ainsi difficile de savoir qui est qui.



J'ai eu l'idée de commencer par faire une division pour tomber uniquement sur les cases vertes (comme une tilled map basique), puis une fois sur cette case choisie, colorier mon sprite en noir (avec un setColor) et prendre la couleur du pixel où est la souris. Si c'est noir, on visait cette case, sinon on vise une case à côté, et ensuite suivant la position de la souris (est-ce qu'elle est plutôt dans la moitié droite ou gauche de l'écran en horizontal? et en vertical?) et bien on devine la case voulue.

Seulement ça aurait été trop beau, je n'ai pas réussi cela pour le moment et ça me semble surtout être une usine à gaz...

J'ai donc commencé à regarder du côté des vertex arrays (déjà pour le gain de perfs). J'ai donc réussi à faire une map avec uniquement des losanges (des quads en forme de losanges quoi), et la partie collision revient, seulement la classe vertexArray n'intègre pas de méthode pour savoir si un point est contenu dans la forme, et c'est là qu'est ma question : Connaissez vous une technique pour gérer une collision entre un losange et un point ? (autre que le pixel perfect car j'aimerais avoir des performances pas trop sales dès le début :p)

Merci à tous, et bonne journée  !

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Collision entre la souris et un vertex array.
« Réponse #1 le: Juillet 01, 2013, 11:02:29 am »
Citer
staggered map (je n'ai pas trouvé de traduction française.. si jamais quelqu'un en a une je suis preneur).
En quinconce ? :D

Citer
Connaissez vous une technique pour gérer une collision entre un losange et un point ?
Ca ne devrait pas être super compliqué. Regarde ça par exemple :
http://stackoverflow.com/questions/10716378/pixel-coordinates-on-diamond
Laurent Gomila - SFML developer

Scarounet

  • Newbie
  • *
  • Messages: 5
    • Voir le profil
Re : Collision entre la souris et un vertex array.
« Réponse #2 le: Juillet 01, 2013, 11:14:09 am »
Merci pour la réponse rapide Laurent ! Ce sera donc la carte quinconce \o/.

Je vais essayer de mettre cela en place, je reviendrais donner mes résultats (et je l'espère, une solution!).