IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

[infos utile+code] -> gestion exacte des collisions


Sujet :

ActionScript 3

  1. #1
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut [infos utile+code] -> gestion exacte des collisions
    salut,

    en cherchant je suis tombé sur les possibilités qu'apporte l'AS3 en matière de détection exact des collisions, principe :
    1-quand les 2 rectangles de délimitation des objets a tester rentrent en contact (le test ce fait avec un simple hitTestObject())
    2-il faut utiliser la classe Bitmap pour vérifier si les formes des objets ce chevauchent
    fallait y penser !

    le truc génial de ce systeme c'est qu'il est applicable a TOUS les éléments visuels donc toutes les classes qui descendent de DisplayObject -> Video / TextField / Shape / MovieClip / Bitmap / .... etc


    tutos :
    http://www.8bitrocket.com/newsdispla...?newspage=6421
    http://www.gskinner.com/blog/archive..._code_sha.html


    Collision Detection Kit (exemples+package)-> http://www.coreyoneil.com/Flash/CDK/index.html
    classe simple + fla de test -> http://labs.boulevart.be/index.php/2...ection-in-as3/


    le "Collision Detection Kit" est quasi parfait, avec juste quelques modifications il devient parfait pour un usage précis !

  2. #2
    Membre confirmé Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Points : 494
    Points
    494
    Par défaut
    J'ajoute un exemple de perfect pixel que j'avais fait :

    http://flash.le-poporing.com/?id=9

    Basé sur la superbe class d'as Man :

    http://www.adventuresinactionscript....sion-detection

  3. #3
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    aprés quelques tests + poussés j'ai remarqué un gros bug dans cette manière de gérer les collisions des que vous avez le clip a tester qui contient d'autres clips et que vous agissez sur sa rotation (jeu de course par exemple) ... la précision en prend un sacré coup dans la gueule, je dirais même qu'elle est complètement parti, a certain moment le clip cible peut rentrer dans l'autre clip a tester de plus de la moitié sans détection de la collision tandis qu'a d'autres moment (dépend de la rotation) sans réel collision celle ci est déclenché

    dommage

  4. #4
    Membre confirmé Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Points : 494
    Points
    494
    Par défaut
    faudrait modifier le code en trouvant la rotation totale par rapport au stage ( recherche recursive, ou la stocké et la passé en argument à la fonction qui test les perfect pixel ).

    Exemple pour la voiture s'il y a que la voiture qui s'eclate avec des rotate on stocke la valeur totale de sa rotation quelques part ( exemple dans sa class ... ) ou le decor , si c'est ce dernier qui tourne ...

    Je vais tenter de bidouiller un peu la class de perfectPixel pour rajouter la rotation en argument optionnel.

  5. #5
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    j'ai le code sous les yeux mais niveau math je n'arrive pas a suivre
    j'aurais du écouter mes parents quand ils me disaient que les maths c'etaient important

    d'aprés ce que j'ai compris par rapport au code : les BitmapData qui sont tracés ne prennent pas en compte la rotation des objets a tester.



    pour infos : la classe d'as Man ne fonctionne même pas des que tu as des clips imbriqués ... pas la moindre détection de collision !

Discussions similaires

  1. Gestion simple des collisions et de la gravité
    Par fab56 dans le forum Physique
    Réponses: 2
    Dernier message: 11/11/2010, 05h45
  2. Gestion globale des collisions
    Par dancingmad dans le forum Physique
    Réponses: 3
    Dernier message: 15/10/2010, 19h14
  3. Réponses: 11
    Dernier message: 16/06/2006, 13h46
  4. Importer avec Ogre / Gestion des collisions
    Par alex6891 dans le forum Ogre
    Réponses: 9
    Dernier message: 19/02/2006, 17h43
  5. Gestion des collisions - terrains
    Par Dranor dans le forum DirectX
    Réponses: 1
    Dernier message: 26/06/2003, 18h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo