Menu

A

|

A

Gestion des contacts Surface sous XNA 3.1

Aujourd’hui je vous propose une petite librairie pour Surface que j’ai développé. Elle vous permet d’ajouter la gestion des contacts surface dans une application XNA 3.1. Pour télécharger cette librairie c’est par là : XnaTouchManager.rar (7,68 kb).

Cette librairie se compose en deux classes :

XnaTouchManager :

Classe statique qui implémente la gestion des contacts. Pour pouvoir utiliser la classe, il faut apporter deux modifications dans votre application root Surface XNA.

private void InitializeSurfaceInput()
{
    // ...
    // Placer la ligne a la fin de la fonction

    XnaTouchManager._ContactTarget = contactTarget;
}

protected override void Update(GameTime gameTime)
{
    if (this.m_bIsApplicationActivated || this.m_bIsApplicationPreviewed)
    {
        if (this.m_bIsApplicationActivated)
            XnaTouchManager.Update((float)gameTime.ElapsedGameTime.TotalMilliseconds);

        // ...
        // Reste de la fonction ici
    }
}

Ensuite pour accéder aux fonctions de ce manager il existe des fonctions statiques :

XnaTouchContact GetContact(int p_iD)
Cette fonction récupère un contact par son identifiant, elle renvoie NULL si elle ne l’a pas trouvé.

bool TryGetContact(int p_iD, out XnaTouchContact p_oContact)
Cette fonction test si un contact existe, si il existe elle renvoie l’instance du contact en paramètre out, le retour de la fonction détermine si le contact a été trouvé.

Et des variables statiques rafraichis a chaque Update :

  • ContactsNew : Liste des nouveaux contacts, cela veux dire qu’ils n’étaient pas présents au dernier Update.
  • ContactsUpdate : Liste des contacts encore présent, cela veux dire qu’ils étaient présents au dernier Update.
  • ContactsOld : Liste des anciens contacts, cela veux dire qu’ils étaient présents au dernier Update et que maintenant il n’existe plus.

Cela vous permet donc de gérer facilement la mise à jour de vos conctacts.

Il reste une dernière classe : XnaTouchContact

Elle permet quand vous utilisez les fonctions GetContact et TryGetContact de vous fournir le contact rechercher et d’où il provient (liste des nouveaux contacts, des mises à jours ou des anciens).

J’espère que cela vous sera utile, je suis aussi preneur de vos retours.

Gestion des contacts Surface sous XNA 3.1

Aujourd’hui je vous propose une petite librairie pour Surface que j’ai développé. Elle vous permet d’ajouter la gestion des contacts surface dans une application XNA 3.1. Pour télécharger cette librairie c’est par là : XnaTouchManager.rar (7,68 kb).

Cette librairie se compose en deux classes :

XnaTouchManager :

Classe statique qui implémente la gestion des contacts. Pour pouvoir utiliser la classe, il faut apporter deux modifications dans votre application root Surface XNA.

private void InitializeSurfaceInput()
{
    // ...
    // Placer la ligne a la fin de la fonction

    XnaTouchManager._ContactTarget = contactTarget;
}

protected override void Update(GameTime gameTime)
{
    if (this.m_bIsApplicationActivated || this.m_bIsApplicationPreviewed)
    {
        if (this.m_bIsApplicationActivated)
            XnaTouchManager.Update((float)gameTime.ElapsedGameTime.TotalMilliseconds);

        // ...
        // Reste de la fonction ici
    }
}

Ensuite pour accéder aux fonctions de ce manager il existe des fonctions statiques :

XnaTouchContact GetContact(int p_iD)
Cette fonction récupère un contact par son identifiant, elle renvoie NULL si elle ne l’a pas trouvé.

bool TryGetContact(int p_iD, out XnaTouchContact p_oContact)
Cette fonction test si un contact existe, si il existe elle renvoie l’instance du contact en paramètre out, le retour de la fonction détermine si le contact a été trouvé.

Et des variables statiques rafraichis a chaque Update :

  • ContactsNew : Liste des nouveaux contacts, cela veux dire qu’ils n’étaient pas présents au dernier Update.
  • ContactsUpdate : Liste des contacts encore présent, cela veux dire qu’ils étaient présents au dernier Update.
  • ContactsOld : Liste des anciens contacts, cela veux dire qu’ils étaient présents au dernier Update et que maintenant il n’existe plus.

Cela vous permet donc de gérer facilement la mise à jour de vos conctacts.

Il reste une dernière classe : XnaTouchContact

Elle permet quand vous utilisez les fonctions GetContact et TryGetContact de vous fournir le contact rechercher et d’où il provient (liste des nouveaux contacts, des mises à jours ou des anciens).

J’espère que cela vous sera utile, je suis aussi preneur de vos retours.

No Comments

Comments Are Closed