Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [Résolu] Les packets n'envoient qu'une seule information  (Lu 4160 fois)

0 Membres et 2 Invités sur ce sujet

CatEndal

  • Newbie
  • *
  • Messages: 14
    • Voir le profil
[Résolu] Les packets n'envoient qu'une seule information
« le: Octobre 21, 2017, 01:38:34 pm »
Bonjour
Je souhaite envoyer la position d'un objet ( appelons le "rect" ). j'utilise pour cela des
sf::TcpSocket
et des
sf::Packet
Lorsque j'envoie la position, je fais ceci
 //coté "serveur"
packet << posX << posY;
client.send(packet);

//coté "client"
serveur.receive(packet);
packet >> posX >> posY;
std::cout << posX << posY << std::endl;
 
La première position (disons 50, 50) est bien envoyée, mais lorsque j'actualise la position, le client affiche toujours 50, 50.

J'ai relu les tutos, mais je ne vois pas d'où viens mon erreur.
Merci


« Modifié: Octobre 21, 2017, 03:49:23 pm par CatEndal »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re: Les packets n'envoient qu'une seule information
« Réponse #1 le: Octobre 21, 2017, 01:44:42 pm »
Est-ce que tu réutilises toujours la même instance de sf::Packet pour l'envoi ? Si c'est le cas ne le fais pas :)
Laurent Gomila - SFML developer

CatEndal

  • Newbie
  • *
  • Messages: 14
    • Voir le profil
Re: Les packets n'envoient qu'une seule information
« Réponse #2 le: Octobre 21, 2017, 01:46:47 pm »
Alors comment je fais si je veut envoyer la position ditons tous les 20 ms ?

CatEndal

  • Newbie
  • *
  • Messages: 14
    • Voir le profil
Re: Les packets n'envoient qu'une seule information
« Réponse #3 le: Octobre 21, 2017, 01:49:16 pm »
Je peut peut être essayer une fonction qui envoie le packet et qui du coup supprime le packet à la fin de l'appel de la fonction ?

CatEndal

  • Newbie
  • *
  • Messages: 14
    • Voir le profil
Re: Les packets n'envoient qu'une seule information
« Réponse #4 le: Octobre 21, 2017, 02:01:47 pm »
C'est bon ça marche merci

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re: [Résolu] Les packets n'envoient qu'une seule information
« Réponse #5 le: Octobre 21, 2017, 05:07:07 pm »
Il n'y a aucune raison de garder des paquets de manière persistante et de les réutiliser. Déclares-en (de manière locale et non-persistante donc) uniquement à l'endroit où tu veux faire l'envoi.
Laurent Gomila - SFML developer