voila je me lance, je bosse actuellement sur un projet de jeu video et j'apprends la programmation en C++ win32 avec les sockets et TCP et UDP
voila j'ai pas mal de question � poser par rapport � ce que j'ai remarqu�
1/ si je cr�� 2 instances d'un meme programme qui fait envoie et reception de messages en UDP avec le meme port par ex 1234 et la meme IP donc 127.0.0.1 et en utilisant 1 thread pour les envois et un thread pour les receptions, en gros dans chaque thread y'a une boucle while(1), pourquoi une de mes instances receptionne ses propres messages et ceux envoy�s par l'autre, et pourquoi l'autre instance n'arrive pas � recevoir ses propres messages et ceux de la premi�re? (j'ai malheureusement pas de 2�me pc sous la main la)
2/ les threads c'est bien gentil mais ca me pompe toutes mes ressources processeur, y a-t-il un moyen de coder ca de maniere a ce que ca "bouffe" moins? comme un MSN ou un jeu r�seau(ex: half-life, quake3 et compagnie, ...) comment c'est g�rer dans ces programmes?
3/ j'ai vaguement lu sur les sockets asynchrones, ca a l'air int�ressant car ca "bouffe" beaucoup moins de puissance processeur, vu que c'est un evenement windows qui dit quand un message a �t� recu et qu'il faut le traiter. ok ! mais j'ai aussi vu sur gamedev que des fois y'a un mini-plantage et que ca renvoit une erreur et qu'il faut attendre en moyenne 750ms avant de pouvoir r�envoyer ou rerecevoir, quelqu'un a des infos dessus? des exp�riences ? j'ai cru ainsi comprendre qu'il fallait mieux faire un systeme de threads sur le serveur et de sockets asynchrones sur le client, mmh si ca marche si bien que ca pourquoi ne pas le faire sur les 2? les sockets asynchrones sont-elles utilisables aussi avec UDP(j'ai test� TCP et ca marche)?
4/ il me faut un systeme ou je peux actualiser mes positions de joueurs par UDP toutes les 30ms (40ms=la perception de l'oeil donc c'est impec) et qui envoie par TCP les informations importantes(ex: un objet qui a �t� ramass�). handicap, il faut que ca prenne le moins de ressources processeur possible et que ce soit fiable, des id�es? conseils? exp�riences? quelqu'un sait comment marche le systeme sur tel ou tel jeu?
Partager