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

XNA/Monogame Discussion :

[XNA] - Collision


Sujet :

XNA/Monogame

  1. #1
    Membre averti
    Avatar de Sieldev
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 259
    Points : 353
    Points
    353
    Par défaut [XNA] - Collision
    Salut,

    J'aimerai savoir comment peut-on gérer les collisions avec l'aide du framework XNA ?

    J'ai deux images, quand les deux images se touchent sur mon plan j'aimerai déclencher un évenement.
    Pour l'instant j'y arrive à peu prés de cette maniére, en mettant un if:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ((Balle.PositionElement.X > BriqueCourante.PositionElement.X) && (Balle.PositionElement.X < BriqueCourante.PositionElement.X + BriqueCourante.TextureElement.Width) && (Balle.PositionElement.Y + Balle.TextureElement.Height > BriqueCourante.PositionElement.Y) && (Balle.PositionElement.Y < BriqueCourante.PositionElement.Y + BriqueCourante.TextureElement.Height))
    Cependant c'est assez long et on s'y perd facilement.

    En cherchant un peu, j'ai pu voir plusieurs classes:
    Rectangle et notamment sa méthode Intersects(Rectangle monRectangle) dont une surcharge qui renvoie un booléen qui vérifie si les deux rectangles se touchent.

    Sauf qu'il ne se passe rien quand ma balle touche les briques
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (Balle.Rect_element.Intersects(BriqueCourante.Rect_element))
                    {
                        BoumBrique(collection_Brique, BriqueCourante);
                    }
    J'ai aussi vu qu'il y avait BoundingBox et BoundinSphere mais je ne sais pas du tout comment les utiliser.

    En somme je voudrais des informations sur l'utilisation de Rectangle, BoundingBox et BoundingSphere.

    Je code en C#.

    Cordialement Sieldev,

  2. #2
    Membre averti
    Avatar de Sieldev
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 259
    Points : 353
    Points
    353
    Par défaut
    C'est bon pour la classe Rectangle, c'était une erreur de ma part.

    Par contre si vous avez des infos sur les classes BoundingBox et BoundingSphere je suis preneur.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#/XNA] Gestion des collisions
    Par Op_m90 dans le forum Physique
    Réponses: 5
    Dernier message: 06/05/2010, 19h25
  2. Collision Detection XNA
    Par Yondaime2a dans le forum C#
    Réponses: 2
    Dernier message: 06/01/2010, 14h16
  3. [XNA] Détection de collision
    Par Scalp4 dans le forum XNA/Monogame
    Réponses: 1
    Dernier message: 25/04/2008, 11h25
  4. [XNA]Comment gerer les collisions ?
    Par Invité dans le forum XNA/Monogame
    Réponses: 1
    Dernier message: 31/03/2008, 12h32
  5. [XNA] Collisions et rebonds
    Par romain69005 dans le forum XNA/Monogame
    Réponses: 3
    Dernier message: 21/07/2007, 22h57

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