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 !