|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 4 ![]() |
Bonjour à tous,
Je me tourne vers vous car je me trouve totalement désemparé... Je dois concevoir une application Flash semblable à Tetris, mais où les pièces seraient des demi-hexagones... (tous de la même taille) J'ai bien suivi pas mal de tuto et télechargé beaucoup de sources et j'ai réussi à comprendre les bases pour faire un Tetris. Mais dés lors qu'on remplace les pièces formées de carrés par des pièces formées de triangles, pour moi ça devient très complexe... et là, j'ai du mal à m'en sortir pour détecter si une pièce en touche une autre, si elle peut tourner... Si quelqu'un avait un peu de temps pour m'éclairer j'en serais très reconnaissant ! |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Développeur multimédia Inscription : juin 2009 Messages : 128 ![]() |
Vaste sujet...
Tu peux utilisé de trucs tout faire de détection de collision comme box2D, mais c'est un peut dur à prendre en main. Si comme dans ton exemple les triangles sont isométriques, quelques soit le sens dans le quel on les retournes, il n'existe que 2 états. L'autre solution serait donc d'abstraire ce que tu vois, et au lieu de considéré une ligne contenant successivement des triangles tête en haut tête en bas, tu démultiplie des lignes pour avoir un coup une ligne acceptant les tête en haut, un coup les ligne acceptant les tête en bas. |
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Développeur Web Inscription : octobre 2005 Messages : 68 ![]() |
Malheureusement il ne s'agit pas de triangles mais d'un demi-hexagone comme spécifié par l'auteur, même si sur l'image c'est un assemblage de triangles donc ça prête à confusion
![]() Sinon techniquement même si la pièce est un demi-hexagone ça change rien, si tu es capable de le faire avec des carré, ça fonctionne pareil. Je veux dire même si la forme des pièces est différente, ça reste une grille de cases. Il y a juste un peu plus de vérifications pré-assemblage à faire. Si c'est deux rectangles c'est plus simple, un carré du rectangle qui entre en collision bloque le déplacement. Avec deux demi-hexagones il faut déterminer si les bords peuvent s'assembler en fonction des orientations des pièces. |
|
|
00
|
|
|
#4 |
![]() ![]() Matthieu DELOISONFormateur ActionScript Flash Inscription : juin 2004 Messages : 645 ![]() |
__________________
Découvrez : Tutoriels, ressources AS2 et AS3 La Méthode AS3 Facile pour développer des applications et jeux Flash en ActionScript 3 : ActionScript-Facile.com |
|
00
|
|
|
#5 | ||
|
Membre du Club
![]() Inscription : avril 2011 Messages : 58 ![]() |
SnowStyle :fazermokeur a raison c'est dix fois plus simple de traiter le problème en prenant les pièces comme 3 triangles liés.
Il n'y a pas besoin de détection de collision, pas vraiment. Il faut juste savoir si la place en dessous de chaque triangle est libre ou occupée. Pour te simplifier le raisonnement travaille avec une grille carré où tu divise chaque carré par une diagonale. Code :
Il me plait bien ton projet. Tu fais ça dans quel cadre ? N'hésite pas à me MP si tu as besoin d'aide. Et pense à poster le truc fini surtout. |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com